3.1 C程序的构成

先来回顾一下第2章的Hello World代码,如代码3-1所示。

代码3-1 HelloWorld代码回顾HelloWorld

/*<-------------------------文件名:HelloWorld.c ----------------------------->*/
01      #include <stdio.h>                                        /*包含该头文件的目的是使用了函数printf()*/
02                                                                              /*空行,主要是为了分隔,编译器忽略*/
03      void main(void)                                         /*主函数,入口点*/
04      {                                                                       /*函数开始*/
05              printf("\nHello World!");                       /*打印字符串*/
06              getchar();                                              /*等待用户按回车键*/
07      }                                                                       /*函数结束*/

代码3-1很短,简单几行代码就创建了一个可以运行的程序。代码虽小,但五脏俱全。纵观整个代码,可以总结出如下特点:

(1)代码由单词、符号、空白组成。单词以英语单词为主,有的单词就是纯正的英语单词,如main、void、include;有的不是,如getchar、printf。单词一般都用小写。代码中的标点符号并不是随意输入的,每个符号在C中都有特定的含义。代码3-1中出现的符号,有“#”、“< >”、“()”、“\”、“/*”、“*/”、“{}”、“;”、“"”。单词与单词之间用空白分隔,空白可以是空格,也可以是tab制表符。空白的个数没有限制。

(2)如同阅读小说一样,C源代码也是从上往下阅读,也就是说C源代码的先后顺序是有讲究的。行与行之间可以有空白行,空白的行数是没有限制的。有的行顶格书写,有的行却又后退了几个空格,这种后退,称为“缩进”。如何缩进也是有讲究的。

(3)并没有专门的标志表示文件从哪里起始,也没有标志表示文件到哪里结束。从第一个字符开始,文件就开始了,到最后一个字符结束,文件就结束了。