【发布时间】:2023-02-13 22:55:18
【问题描述】:
以下sn-p来自mac sdk signal.h:
#define sigemptyset(set) (*(set) = 0, 0)
只是想知道, 0) 是做什么的?
【问题讨论】:
-
这回答了你的问题了吗? What does the comma operator , do?
标签: c
以下sn-p来自mac sdk signal.h:
#define sigemptyset(set) (*(set) = 0, 0)
只是想知道, 0) 是做什么的?
【问题讨论】:
标签: c
该宏扩展为一个逗号表达式,该表达式设置set 指向的对象并计算其右操作数,即:0。
换句话说,宏的行为就像一个函数,它总是返回由返回值 0 指示的成功。
【讨论】:
在这个表达式中
(*(set) = 0, 0)
使用逗号运算符。
表达式的结果为 0。
作为副作用,指针 set 指向的对象被设置为 0。
【讨论】: