shr*_*sva 4 c increment ternary-operator
我认为三元运算符:根据条件返回左侧或右侧的值.为什么这段代码打印1?
:
#include <stdio.h> int main(int argc, char const *argv[]) { int c = 0; (c?c:0)++; printf("%i", c); return 0; }
Dav*_*nan 13
您似乎有编译器错误,或者可能是语言扩展,因为这不是有效的C.您需要一个左值来应用++运算符,而(c?c:0)不是左值.
++
(c?c:0)
归档时间:
14 年,7 月 前
查看次数:
782 次
最近记录:
13 年,9 月 前