【发布时间】:2013-02-10 23:02:55
【问题描述】:
int i=1,2,3,4; // Compile error
// The value of i is 1
int i = (1,2,3,4,5);
// The value of i is 5
这些 i 在 C 中的定义有什么区别?它们是如何工作的?
编辑:第一个是编译器错误。第二个是如何工作的?
【问题讨论】:
-
很确定这属于未定义的行为
-
@Kippie 第二个使用逗号运算符。很多次。
-
第一个是编译器错误
-
Abhinav 我很好奇,哪个编译器接受了你的第一个例子?
-
@juanchopanza 第一个确实是编译器错误。我的坏..