您的位置:首页 > 编程语言 > C语言/C++

C语言进阶-第8~10讲:预处理

2017-11-06 21:51 302 查看
知识点总结:

       预处理 以"#"开头的命令

       (1)宏定义 #define ...

       (2)文件包含 #include ...

       (3)条件编译 #indef ...

       宏定义                  #define 标识符 字符串

       带参数的宏定义  #define 宏名(参数表) 字符串

       谨慎带参数的宏定义的副作用,原样替换,整体替换时要给参数加括号

       文件包含
?多文件程序组织

       源文件与头文件的分离

       一般头文件的几类内容:

                                                对自定义类型的声明

                                                函数声明

                                                宏定义

                                                全局变量定义

                                                外部变量声明

                                                或包含其他头文件

       include命令的两种形式:

                                                #include <文件名> 文件在系统目录中

                                                #include "文件名" 文件默认在用户的当前目录中

       GCC编译器中的头文件和库函数:

       

     

         条件编译 :根据需要只编译程序中的某一部分

         常用于对程序的调试中 

         条件编译的常用形式:

        


        


         文件包含中的一个问题(重复包含):

         文件包含保护--条件编译的另一用法(三行)

        


心得:

        预处理—>文件包含—>头文件—>宏定义—>条件编译

        其中文件包含中包含源文件和头文件,头文件又含系统目录中的头文件和自定义在当前目录下的头文件

        要将源文件和头文件分离,拿什么样的内容应该放在头文件中呢?

        宏定义可以是常见的定义符号常量也可以带参数进行宏定义,特点是原样替换

        条件编译常用在程序调试中和文件保护中,在自定义的头文件中条件编译避免文件重复包含
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c语言