为了账号安全,请及时绑定邮箱和手机立即绑定

argv【】的类型必须是char*吗

gcc 提示这个类型有错,弄了好久也没纠正过来。还有就是用char argv[]接受可以不,虽然gcc依然报错了。

正在回答

6 回答

main函数带2个参数的原型为 int main(int, char**);

惯例上把第一个参数叫argc(argument count),第二个参数叫argv(argument vector)。而argv写成指针形式数组形式都可以

int main(int argc, char *argv[]);

int main(int argc, char **argv);


但写成 char argv[] 就不对了,这个argv是char*类型而非char**类型。

0 回复 有任何疑惑可以回复我~
#1

锦衣当夜行 提问者

非常感谢!
2016-01-13 回复 有任何疑惑可以回复我~

会不会是跟我一样printf("argv[%d] is %c\n",i,argv[i]);

把%c改为%s就行了,因为是字符串,不是字符

0 回复 有任何疑惑可以回复我~

你用的是argv【】?可能是你的中括号的问题是英文字符的[]


0 回复 有任何疑惑可以回复我~
#1

锦衣当夜行 提问者

亲,我是在centos的字符界面下编写,就算我想用中文的中括号估计系统也输不上的
2016-01-11 回复 有任何疑惑可以回复我~

不可以用char argv[]

0 回复 有任何疑惑可以回复我~
#1

锦衣当夜行 提问者

我又发个一个有截图的,亲可以去看看
2016-01-11 回复 有任何疑惑可以回复我~

是你写错了,应该是int main(int argv,char *argc[])

0 回复 有任何疑惑可以回复我~
#1

锦衣当夜行 提问者

不行,依然报错呀,我再发一个,有截图的
2016-01-11 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

argv【】的类型必须是char*吗

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信