C中预处理的用法

     预处理命令用来改进编程环境,提高编程效率。在对程序进行编译之前,先对程序中的特殊预处理命令进行“预处理”(如替换)。预处理命令并不是c语言的一部分。C提供的预处理命令主要有三种:宏定义、文件包含、条件编译。这些命令符号用“#”开头。

     宏定义包括带参数的宏定义和不带参数的宏定义。#define是宏定义命令。不带参数的格式为:“#define 标识符 字符串 ”  带参数的宏定义格式为:“#define 宏名(参数表) 字符串”。个人理解,宏定义就是为方便程序运行而定义的常量(不带参数的宏定义)和简单函数运算(带参数的宏定义)。在使用宏定义是需要注意的点有:宏名一般大写、是字符串的简单替换(所以强调的是以后的引用必须完全一样,对命名简明性的要求)、行尾不加分号、作用域默认为源文件结束但也可以用#undef来表示终止宏的作用域、宏定义以及终止必须都在函数体外、宏可以层层置换(即此宏用毕红)、只做字符置换不分配内存空间、宏替换不占运行时间只占编译时间

   “文件包含”处理:一个源文件的内容可以将另一个源文件的内容全部包含进来。一般格式:“#include “文件名””或“#include <文件名>”,可以节省程序员的重复劳动问题。在经过编译预处理后将头文件包含到主文件夹中,得到一个新的源程序,然后对这个文件进行编译,得到一个目标文件。这种常用的头部文件称为“标题文件”或“头文件”,常以“.h”、“.c”为后缀或者没有后缀。使用时应注意:头文件的包含关系和引用顺序之间的关系。常用头文件介绍:

条件编译(满足条件则编译)

(1)#ifdef

程序段1

#else

程序段2

#endif

(2)#ifndef 标识符

程序段1

#else

程序段2

#endif

(3)#if 表达式

程序段一

#else

程序段2

#endif

 

posted @ 2014-06-05 23:21  雾里看剑  阅读(261)  评论(0编辑  收藏  举报