【发布时间】:2013-06-07 09:13:42
【问题描述】:
我在 C/C++ 中搞乱项目,我注意到了这一点:
C++
#include <iostream.h>
int main (int argc, const char * argv[]) {
// insert code here...
cout << "Hello, World!\n";
return 0;
}
和
C
#include <stdio.h>
int main (int argc, const char * argv[]) {
// insert code here...
printf("Hello, World!\n");
return 0;
}
所以我一直想知道,这些默认参数在 C/C++ 中的 int main 下到底有什么作用?我知道应用程序在没有它们的情况下仍然可以编译,但它们的用途是什么?
【问题讨论】:
-
argc:参数计数; argv:参数向量。它们是程序的命令行参数。不是 C 语言中的
char** argv吗? -
它们提供对提供给程序的命令行参数的访问。
-
@mwerschy:
char*[]和char**都有效。 -
@Kirilenko 啊好的 :) 不知道 C 允许这样做。