复杂C源码中,往往可以经常看到各种宏的比较深入的用法,所以我们这里举一些宏的比较高级的、比较深入的用法的例子。
使用宏来代替简短函数
参考:C++——引用
例子
#include <stdio.h>
void exchange(int *p1, int *p2)
{
int tmp = 0;
tmp = *p1;
*p1 = *p2;
*p2 = tmp;
}
int main(void)
{
int a = 10;
int b = 30;
exchange(&a, &b);
printf("a=%d, b=%d\n", a, b);
return 0;
}