2.1 C语言源程序
一个C语言源程序,是由一个或多个函数定义顺序组成的,其中必须有一个函数名为main的主函数。C语言源程序的主要组成部分有:编译预处理命令、注释和声明。而主函数则是被编译程序翻译成一个机器语言形式的主程序段,任何其他函数都将被编译程序翻译成机器语言形式的子程序段。
2.1.1 熟悉源程序的特点
通过对第1章的学习,我们总结出了C语言源程序的几个特点:
(1)一个C语言源程序可以由一个或多个源文件组成。
(2)每个源文件可由一个或多个函数组成。
(3)一个源程序不论由多少个文件组成,都有一个且只能有一个main()函数,即主函数。
(4)源程序中可以有预处理命令(“include”命令仅为其中的一种),预处理命令通常应放在源文件或源程序的最前面。
(5)每一个说明、每一个语句都必须以分号结尾,预处理命令除外。
(6)标识符和关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,可以不用再添加。
2.1.2 函数
C语言源程序中的函数并非数学中那些高深莫测的函数,它只是完成特定数据处理任务,功能上独立的一个程序段而已。
1.函数的定义
任何一个函数定义都是由函数首部和函数体构成。函数体必须用大括号“{”和“}”括起来,函数体必须紧接在函数首部之后。格式如下:
函数定义=函数首部+函数体 int main(void)() // 函数首部 { // 函数体 …… return 0; }
2.函数体的成分
C语言源程序中,函数体的成分是由0条或多条变量组成的定义序列;1条或多条语句顺序组成的语句序列。格式如下:
函数体的主要成分:变量定义序列+语句序列 int r=5; int f=3; int s; // 变量定义序列 s=r*f; // 语句序列
提示
变量定义序列和语句序列都是由分号“;”结尾的。
3.变量定义序列
C语言程序中的变量定义序列,被编译程序转变为机器语言程序中,存放多个数据的内存单元地址;而C语言源程序函数体中的语句序列,则被编译程序翻译成对这些内存单元中的数据,进行运算处理的机器指令序列。
【例2-1】编写一段程序,实现两个数相乘的功能。(源代码\ch02\2-1)
运行上述程序,结果如图2-1所示。
图2-1 变量定义序列
【代码解析】
main()是主函数的函数名,表示这是一个主函数,也是函数的首部。而函数体就是大括号里面的一系列语句。定义的三个整型变量r、s、f构成了一组变量序列,最后通过语句序列(s=r*f)输出需要的答案。