C程序的组成 C程序是由一个或多个.c和.h文件组成 .c : c源代码文件 .h :c的头文件 1,.c(c源代码文件)的组成 (1)预处理命令。以"#"开头的行,在编译之前预先做的一些工作 a.#include 文件包含命令 #include <stdio.h> #include "xxx.h" 上面两个都是文件包含命令,其作用是找到相应的文件,然后把该文件 的内容在此处展开。不同的是,文件的搜索路径不一样: <>在系统标准的头文件路径(如:/include,/usr/include...)下搜索 ""先在工程目录下搜索,然后再到指定路径下搜索 gcc hello.c -o hello -I../ //-I用来指定头文件的搜索路径 gcc -E hello.c -o hello.i //hello.i是预处理完成之后的文件 b. 宏定义 #define PI 3.14 //不带参数的宏 #define MAX(a,b) ((a)>(b)?(a):(b)) //带参数的宏 宏仅作"替换"作用 m = MAX(3+5,6+8) ==> m = ((3+5)>(6+8)?(3+5):(6+8)) #define DEBUG //仅定义一个符号DEBUG c.条件编译:若条件为真则到endif之间的语句会参与编译,否则就不参与编译 #ifdef DEBUG .... #endif #if 0 ... #endif #ifndef _xxx_H_ ... #endif (2)全局声明 C语言中任何东西都必须知根知底,拒绝一切来路不明(身份不清) "声明":C语言中声明就是把一个名字(c标识符)的属性进行说明。 比如说该标识符是变量还是函数呢,如果是变量则又是什么类型。 一般在定义变量(或函数)时就规定了变量(或函数)的属性,所以定义也属于声明。 C程序的编译顺序是从上到下的,所以我们在调用某变量或函数时,必须要先把 它们进行声明(定义),让系统知道它的属性,再调用它们。 (3)函数。function,功能。 C语言的函数就是一个功能模块,是指令序列的集合。 一个程序可以有多个函数,但有且仅有一个main函数(主函数),main由执行这个 程序的操作系统来调用。程序的执行由main函数开始,那么main函数执行完了, 你的程序也执行完了。 2 .h文件的组成 c语言头文件是一个接口文件,该文件的内容一般为相应的C文件要导出的接口部分的内容: 其实就是一些声明: 函数的声明 putchar / getchar printf / scanf 这些函数就声明在stdio.h这个头文件里 类型的声明(构造类的数据类型) 全局变量的声明 main.c sum.c sum.h gcc main.c sum.c -o sum 头文件的写法举例 #ifndef _SUM_H_ //为了防止头文件重复包含 #define _SUM_H_ extern int sum(int a,int b);//声明外部函数 struct test //声明结构体类型 { int a; char c; }; extern int a;//声明外部全局变量 #endif