每个C程序都必须有一个名为main的函数,操作系统通过调用main函数来执行程序,main函数执行语句并给操作系统返回一个值。
下面看一个最简单的main函数,不执行任何功能,只是返回一个值:
int main () {
return 0;
}
操作系统通过main函数的返回值是否为0判断程序是否成功执行完毕。
main函数是操作系统唯一显式调用的函数。
函数必须包含返回类型、函数名、() 、{},圆括号内是形参列表(可能为空) ,花括号内是函数体。
main函数的返回类型必须是int,该类型表示整数,是C++的内置类型。
main函数的形参个数是有限的,在本例中为空,后面会介绍main函数中可以定义的其他形参。
最后的部分是函数体,以{}包含的语句块
{
return 0;
}
本例中唯一的语句是return,该语句用于终止函数,并返回值。在本例中,return 0;其中 0 是返回值,返回值的类型必须与函数返回类型相同或可以转换成函数的返回类型。
C语言中大多数语句都以分号结尾,分号很容易被忽略,而漏写分号会导致莫名其妙的编译错误。
程序编写完成后需要编译才能被翻译成计算机可以执行的二进制文件。编译过程与操作系统与编译器有关,本文以Linux下的gcc编译器为例。
源文件命名规范:源代码保存在文件中,这些文件被称为源文件,文件后缀表明该程序是用什么语言编写的。C源文件后缀为 .c。
本例保存在名为main.c中,使用gcc编译
$ gcc main.c
$是系统提示符,gcc是编译器命令名。编译器会在当前目录输出一个名为a.out的可执行文件。
在Linux下,执行当前目录下的程序需要指定当前目录:
$ ./a.out
“.”代表当前目录“/”代表在该目录下
查看程序的返回值:
$ echo $?
到此,已经完成了一个完整C程序的开发流程。