c c++ #define 定义假函数

#define   Add(a,b)   ((a)+(b))

#define Max(a,b) ((a)>(b)?(a):(b))

这就定义了一个假的函数

说白了就是字符串替换

这样在写代码时能简化,省去了多打几个括号的功夫

但是,它仅仅做的是替换,会有点问题

拿算法笔记上面的例子来说吧

#define CAL(x)  (x*2+1)

下面在函数中调用的时候,如

a=1;

CAL(a+1)

值为多少呢  (1+1)*2+1=5?

其实是 1+1*2+1=4

另外,#define 宏定义中

还可以使用   #   ##  #@等符号

原文地址:https://www.cnblogs.com/lxzbky/p/10505460.html