c++ #define 宏

1.#define 宏的使用:

#define PI 3.1415926 // 把程序中出现的PI全部换成3.1415926
#define S(a,b) a*b // area=S(3,2);第一步被换为area=a*b; ,第二步被换为area=3*2;
// 实参如果是表达式容易出问题

#define S(r) r*r

area=S(a+b); // 第一步换为area=r*r;,第二步被换为area=a+b*a+b;
//正确的宏定义是 #define S(r) ((r)*(r))

更具体可见链接

2.#undef使用

undef用于取消宏定义

#include <stdio.h>  
#define PI 3.14  
#undef PI  
main() {  
   printf("%f",PI);  
}

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

Compile Time Error: 'PI' undeclared

参考链接

posted @ 2022-07-26 19:51  好人~  阅读(49)  评论(0编辑  收藏  举报