define的固定搭配
中国智慧论文1000字-
2023年2月17日发(作者:新年吉祥话祝福语(精选95句))
define的函数⽤法
1.定义常量,⽐如#definemax10;此时就是⼀个⽂本的替换
2.定义函数,⽐如#defineMAX(a,b)((a)>(b)?(a):(b))此时就和定义了⽐⼤⼩的函数⼀样
1.注意:define是简单的⽂本替换,也就是说这并没有你想的那么好⽤⽐如说
#include
#defineadd(a,b)a*b
#defineadd1(a,b)(a)*(b)
intmain(void)
{
printf("%dn",add(1,2));//2
printf("%dn",add(1+2,2+3));//8
printf("%dn",add1(1+2,2+3));//15
}
就是因为它只是单纯的⽂本调换,所以要记得加括号
2.#defineMAX(a,b)((a)>(b)?(a):(b))这⼀条也⽐较常⽤,总之要在描述作⽤时把括号带上
3.另外有⼈会这么写
#definepinint*
pina,b;
本意其实都想让a和b成为int型指针,但是实际上却变成了int*a,b;a是int型指针,b是int型变量,咋处理捏?这个时候typedef就
出来了,它说我可以满⾜define满⾜不了的要求,所以改成
typedefpin(int*)