linux源码阅读笔记 #define 语句的妙用

#define 语句用于宏定义,在c中,我们可以用其实现函数的功能。如下语句

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

很显然,这是一个比较大小的语句。这里a,b相当于函数中的参数。but,如果我们想写一些复杂的语句怎么办。有办法,如下。

#define test(a,b)  ({

       int c=0;

       a=b+c;})

but,如果我们想要返回值怎么办。有办法。

#define test(a,b) ({

        int c=0;

        a=b+c;

        a;})

四高一

原文地址:https://www.cnblogs.com/elnino/p/4311372.html