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;})

四高一

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。