C 条件运算符 ('?' ) 第二个参数为空

标签 c operators conditional ternary-operator

<分区>

通常是 '?'运算符以下列形式使用:

A ? B : C

但是在 B = A 的情况下,我看到了以下缩写

A ? : C

这出人意料地有效。将第二个参数保留在(风格明智)中更好,还是某些编译器无法处理这个问题?

最佳答案

C 语言不允许这样做(据我所知),但是像 gcc 这样的编译器有快捷方式 a?:c as an extension . a?:c 等同于a?a:c

关于C 条件运算符 ('?' ) 第二个参数为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10143125/

相关文章:

c - 数组元素的类型不完整

linux - 在 bash 中使用 sed 查找和替换其后继数字

rust - 使用rust 或两个选项之间

java - 如何将 if-else 语句与函数返回一起使用?

jsf - 在组件上切换验证器

java - 在 if-then-else 语句中明确声明范围是否有害?

c - 我已经安装了 gtk 2.0 然后我编译了我的代码然后它没有找到 gtk.h?

c++ - 由于滥用 MQTTAsync_connectOptions,paho cpp 客户端无法编译

Java int += double 语法惊喜

c - 如何将 "enter key"合并到按钮按下事件中