浏览 2060 次
锁定老帖子 主题:C语言不支持按址传递吗?
精华帖 (0) :: 良好帖 (0) :: 新手帖 (7) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-11-08
最后修改:2008-11-08
#include<stdio.h> #include<stdlib.h> typedef struct Str{ int i; int j; }str; int giveinfo(str &str); int main(){ str str; giveinfo(str); str.i = 89; printf("%d\n",str.i); printf("%d\n",str.j); return 0; } int giveinfo(str &str){ str.i = 9; str.j = 20; return 0; } 开始我用gcc编译 gcc -o struct struct.c 总是出现错误: struct.c:9: 错误:expected ‘;’, ‘,’ or ‘)’ before ‘&’ token struct.c:19: 错误:expected ‘;’, ‘,’ or ‘)’ before ‘&’ token 怎么改都不行,后来我就用g++编译就成功了。 可是问题是:用g++编译的时候g++是怎么处理的?难道他就完全按C++的语法编译? http://phynix.iteye.com/blog/264365 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-11-08
最后修改:2008-11-08
#include<stdio.h> #include<stdlib.h> typedef struct Str{ int i; int j; }str; int giveinfo(str *str); int main(){ str str; giveinfo(&str); str.i = 89; printf("%d\n",str.i); printf("%d\n",str.j); system("PAUSE"); return 0; } int giveinfo(str *str){ str->i = 9; str->j = 20; return 0; } |
|
返回顶楼 | |
发表时间:2008-11-08
恩,谢谢啦,原来是这样~
|
|
返回顶楼 | |