换为bool会出错，然而在这里，示例程序使用了逗号运算符的性质，使得在第三行执行时抛弃第一个值（即字符串），只测试第二个值；而在第5行中，宏参数expr被完整地传递到__assert_fail函数中，因此实现了自定义错误信息的功能。另外，这里使用了一些预处理器的特殊用法。断言通常在生产环境中被禁用，因此只应该在调试时使用。
判断语句.逗号可以在循环语句和判断语句（if，while，do while或for）内使用，以辅助计算，尤其是在调用函数和使用函数返回值时。变量具有块作用域