博学而笃志 切问而近思 仁在其中
详情
C语言宏
作者:--     发布时间:2019-11-20     评论:0     阅读:0

宏是一种可由宏的值代替的代码段。 宏由#define指令定义。 有两种类型的宏:

  • 类似对象的宏
  • 类似函数的宏

类似对象的宏

类似对象的宏是一种被值替换的标识符。它广泛用于表示数字常数。 例如:

#define pi 3.14

这里,pi就是代替值3.14的宏名称,对于宏名称可使用与变量命名规则相同的其它名称。

类似函数的宏

类似函数的宏看起来像函数调用。例如:

#define min(a,b) ((a)<(b)?(a):(b))

这里,min是宏的名称。

可通过访问#define来查看类似对象和类似函数的宏的完整示例。

c预定义宏

ansi c定义了许多可在c语言程序中使用的预定义的宏。如下列表所示 -

序号 说明
1 _date_ “mmm dd yyyy”格式表示当前日期。
2 _time_ “hh:mm:ss”格式表示当前时间。
3 _file_ 表示当前文件名。
4 _line_ 表示当前行。
5 _stdc_ 当编译器符合ansi标准时,它被定义为1

c语言预定义的宏示例

为了更好地演示如何使用c语言预定义的宏,我们创建一个源文件:predefined-macros.c 在工程 preprocessor 中,其代码如下所示 -

#include <stdio.h>  
void main() {
    printf("file :%s\n", __file__);
    printf("date :%s\n", __date__);
    printf("time :%s\n", __time__);
    printf("line :%d\n", __line__);
    //printf("stdc :%d\n", __stdc__); 不常用
}

执行上面示例代码,得到以下结果 -

file :f:\worksp\clanguage\preprocessor\preprocessor\predefined-macros.c
date :aug 17 2017
time :17:33:25
line :6


下一篇:测试
相关文章
loading......
最新动态
所有评论

loading......

网站声明:
本站部分内容来自网络,如您发现本站内容
侵害到您的利益,请联系本站管理员处理。
联系站长
373515719@qq.com
关于本站:
编程参考手册