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

C语言宏的定义及使用

2016-04-01 10:11 330 查看
一般在C程序中都会看到宏的定义与使用define,一般会有下面几种用法,

1、在C或C++语言源程序中允许用一个标识符来表示一个字符串,称为“宏”。

#define M (a+b) 它的作用是指定标识符M来代替表达式(a+b)。在编写源程序时,所有的(a+b)都可由M代替

2、判断某个宏是否被重复定义,宏的解除,如下

#if defined a

#undef a

#define a 200

#endif

上述语句检验a是否被定义,如果被定义,则用#undef语句解除定义,并重新定义a为200

相类似用法

同样,检验a是否定义:

#ifndef a //如果a没有被定义

#define a 100

#endif

以上所用的宏中:#undef为解除定义,#ifndef是if not defined的缩写,即如果没有定义。

一般.h文件里最外层的

#if !defined XXX_XXX

#define XXX_XXX

#endif

是为了防止这个.h头文件被重复include。

3、有参数宏的定义

#define M(y) ((y)*(y)+3*(y)) /*宏定义*/

k=M(5); /*宏调用*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: