#define ACIGA_RETURN( express, ret, fmt, ... )\ do\ {\ if(!!(express))\ {\ ACIGA_LOGF( fmt, ##__VA_ARGS__ );\ return (ret);\ }\ }while(0)这些语句中有很多“、”符号,是起什么作用的?
时间: 2023-07-21 22:31:10 浏览: 102
do...while(0)的妙用详细解析
5星 · 资源好评率100%
在这个宏定义中,反斜杠(\)是用来连接多行代码的符号,也就是把一行代码分成多行书写。这种写法也叫做“宏定义折行”。在宏定义中,如果一行代码太长,可以使用反斜杠折行,使代码更加清晰易读。
具体来说,当宏定义比较长时,可以使用反斜杠折行,把宏定义分成多行书写,例如:
```
#define ACIGA_RETURN( express, ret, fmt, ... ) \
do { \
if(!!(express)) { \
ACIGA_LOGF( fmt, ##__VA_ARGS__ ); \
return (ret); \
} \
} while(0)
```
在这个宏定义中,把每行代码的末尾使用反斜杠进行折行,使代码更加清晰易读。这样书写的好处是,在阅读和修改代码时,可以更加方便地查看每个代码块的作用和逻辑,减少出错的可能性。
阅读全文