作者littleshan (我要加入剑道社!)
看板C_and_CPP
标题Re: [问题] pointer
时间Mon May 11 09:23:57 2009
※ 引述《LPH66 ((short)(-15074))》之铭言:
: ※ 引述《Anonymoux ( :))》之铭言:
: : 我想请问各位一个关於struct的问题,因为这部分我完全新手,但临时需要没办法慢慢学
: : 因为整个程式码有200多行
: : 所以只列出我认为应该有相关的部分
: : struct tab{
: : int val;
: : char* name;
: : }tab[100];
: : ...
: : char* sname="ab";
: : struct tab* tabPtr(sname); /*tabPrt会依sname自动配一个位址给他*/
: 这个真的吗?
: 你的 tabPtr 是个指标
: 所以这会把 sname 这个指标(char *)转型成 struct tab * 丢给 tabPtr
: 但这是个可能合法但显然绝对不合理的行为....
很不幸的,他这样写,实际上会宣告一个叫 tabPtr 的函式,
接受一个参数叫 sname,虽然这个参数没型别,
但不巧 C 又规定没形别的变数宣告预设为 int...
所以这段程式可以编过,不过行为完全预期外。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.87.151.2
1F:推 LPH66:啊我忘了他是写C...orz 05/11 09:26
2F:→ LPH66:把它当 ctor 去了 @_@; 05/11 09:27
3F:推 VictorTom:l大好神眼睛好利....:) 05/11 11:00
4F:→ Anonymoux:感谢两位L大解疑 :) 05/11 17:16