当前位置: 技术问答>linux和unix
main(int argc,char *argv[])和main(int argc,char **argv[])的区别
来源: 互联网 发布时间:2017-02-19
本文导语: main(int argc,char *argv[])和main(int argc,char **argv[])的区别是什么?为什么有两个*号? | 我看到有些书上是这样写的:int main(int argc, const char *argv[]); 如果用const 去限制argv[],那么就是指针不可以修改,...
main(int argc,char *argv[])和main(int argc,char **argv[])的区别是什么?为什么有两个*号?
|
我看到有些书上是这样写的:int main(int argc, const char *argv[]);
如果用const 去限制argv[],那么就是指针不可以修改,即指针只会指向初始化时指向的地址,不可以在让指针指向其他地方。而用const去限制*argv[],那么说明是指针指向的内容不可以修改。
|
两个*说明argv数组里面存放的是指针的指针,这样设计完全没有必要。