“int i=1,2,3”和“int i=(1,2,3)”之间的区别 - 使用逗号运算符的变量声明[重复]

2024-05-09

  1. int i=1,2,3;

  2. int i=(1,2,3);

  3. int i; i=1,2,3;

这些说法有什么区别?我无法找出任何具体原因。


Statement 1 Result : Compile error.

“=”运算符的优先级高于“,”运算符。 逗号在这里充当分隔符。编译器创建一个整型变量“i”并用“1”对其进行初始化。 编译器无法创建整数变量“2”,因为“2”不是有效的标识符。


Statement 2 Result: i=3

“()”运算符的优先级高于“=”。因此,首先评估括号运算符。 '()' 运算符是从左到右进行操作的。但分配的总是最后一个结果。


Statement 3: Result: i=1

“=”运算符的优先级高于“,”运算符。所以“i”被“1”初始化。 '2' 和 '3' 只是常量表达式。所以没有效果。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

“int i=1,2,3”和“int i=(1,2,3)”之间的区别 - 使用逗号运算符的变量声明[重复] 的相关文章

随机推荐