main()与exit()
main函数
函数返回值
c
语言约定,main
函数的返回值为0
时表示函数运行成功,正常情况下,如果省略return 0
,编译器会自动添加
1 | int main() { |
main函数形参
main
函数可以添加形参,其中argc
全称是argument count
,代表argv
中元素的个数,argv
的全称是argument value
,代表参数值,它是一个指向字符串的指针数组
1 | int main(int argc, char* argv[]) { |
将如下代码写入到demo1.c
中
1 | int main(int argc, char* argv[]) { |
使用gcc
编译
1 | gcc demo1.c -o demo1 |
运行编译好的程序
1 | demo1 val1 val2 val3 |
控制台中输出;可以看到会多传入一个文件名作为默认的参数
1 | argc = 4 |
在intellij Clion
中可以配置main
方法接收的参数,运行时将自动传入
exit函数
结束程序执行
main
函数结束时也会隐式调用exit
函数,在main
函数中,exit
函数等价于return
exit
属于stdlib.h
库,用于结束函数的执行并向外部返回一个值,该返回值就是它的参数,通常使用两个常量EXIT_SUCCESS
和EXIT_FAILURE
作为参数,相当于0
和1
,分别代表正常结束
和异常终止
1 | int main() { |
结束时调用方法
在exit
执行前执行atexit
,函数,并传入一个函数指针,指针指向的函数将在exit
结束前被调用
1 | int main() { |