写法一:
int main(void)
{
return 0;
}
写法二:
int main(int arg, char* argv[])
{
return 0;
}
说明
- int 类型的返回值:代表函数的结束状态;
- main函数的参数: 可以接收用户在运行程序的时候传递数据给程序,参数也可不要。
- 第一种写法:
无参数的,有返回值;
返回值类型为整型,若返回0,则表示程序正常结束,若返回非0数值,则表示异常退出,通常由系统决定。
- 第二种写法
带参数,有返回值;
返回值和第一种写法一样的意义。
int arg, char* argv[] 这两个参数类型是固定写法,参数名不定;
参数 arg 表示带入参数的个数,指针数组 argv[] 存储每个参数的首地址。
提示:
不给main()函数传递参数时,默认argc = 1,即至少有一个参数,该参数为该执行文件所在的目录。
事例:
#include <stdio.h>
int main(int argc, char * argv[]) {
printf("argc = %d argv = %p\n", argc, argv[0]);
printf("argc = %d argv = %s\n", argc, argv[0]);
return 0;
}
// 输出结果为:
argc = 1 argv = 0x7fff5fbff830
argc = 1 argv = /Users/xiaoming/Library/Developer/Xcode/DerivedData/main函数的参数-afjseeplwaephjawqzcqjwliktoa/Build/Products/Debug/main函数的参数
第二个输出的argv表示该执行文件所在的目录。