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

C语言特性(预处理)

2015-12-23 19:51 344 查看

预处理

使用#define、#undef执行宏定义

#define
的作用就是为字符串起个名字

关于宏定义,有如下注意点

1.宏定义并不是C语句,因此不要在宏名称与字符串之间使用=进行复制,而且宏定义也无需使用分好结束。
2.宏定义并不是变量,它甚至不是常量,因此不要尝试对宏名称进行赋值。
3.编译器对宏定义处理就是进行“查找、替换”——将所有出现宏名字的地方替换成该宏对应的字符串,因此,要保证宏定义
是正确的。


执行宏定义后,该宏的作用域为从定义该宏开始,知道该源代码结束,如果希望提前结束宏定义,则可以使用如下语句:

#undef 宏名称


带参数的宏定义

定义参数宏的语法格式如下:

#define 宏名称(参数列表) 字符串


使用#ifdef、#ifndef、#else、#endif执行条件编译

使用#if、#elif、#else、#endif执行条件编译

提供了更通用的条件编译,它可以对指定的表达式进行判断,根据表达式的值决定是否要编译指定的语句。语法格式如下:

#if 表达式
//任意语句
#elif 表达式
//任意语句
... //可以有零个或多个#elif语句
//最后的#else语句也可以省略
#else
//任意语句
#endif


#include与#import

C语言提供了#include来导入其他源程序,而Objective-C则提供了#import来导入其他源程序,而且#import更加好用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: