main() 函数
当程序开始运行时,系统将调用函数
main,这将标记程序的入口点。 缺省情况下, main 具有存储类 extern。 每个程序都必须具有一个名为 main的函数,并且以下约束适用:- 程序中的任何其他函数都不能称为
main。 main不能定义为inline或static。
main不能从程序内部调用。
main的地址无法使用。
main功能不能被重载。
main函数不能与 说明符一起声明。constexpr
可以使用以下任何格式使用或不使用参数来定义函数
main :int main (void){}
int main ( ){}
int main(int argc, char *argv[]){}
int main (int argc, char ** argv){}
虽然可以为这些参数提供任何名称,但它们通常称为 argc 和 argv。 第一个参数 argc (自变量计数) 是一个整数,用于指示启动程序时在命令行上输入的自变量数。 第二个参数 argv (自变量向量) 是指向字符对象数组的指针数组。 数组对象是以 null 结束的字符串,表示启动程序时在命令行上输入的自变量。数组的第一个元素 argv[0]是一个指向字符数组的指针,该数组包含从命令行运行的程序的程序名或调用名。 argv[1] 指示传递到程序的第一个自变量, argv[2] 第二个自变量,依此类推。
以下示例程序
backward 打印在命令行上输入的自变量,以首先打印最后一个自变量:#include <stdio.h>
int main(int argc, char *argv[])
{
while (--argc > 0)
printf("%s ", argv[argc]);
printf("\n");
}从命令行调用此程序:
backward string1 string2提供以下输出:
string2 string1自变量 argc 和 argv 将包含以下值 在程序开始时:
| 对象 | 值 |
|---|---|
argc |
3 |
argv[0] |
指向字符串 "backward" 的指针 |
argv[1] |
指向字符串 "string1" 的指针 |
argv[2] |
指向字符串 "string2" 的指针 |
argv[3] |
NULL |