发布网友 发布时间:2024-02-22 17:38
共4个回答
热心网友 时间:2024-08-06 16:03
同楼下 @凌云小紫冥 的回答!
你的程序运行结果是7而我在VS2015运行结果是7,而GCC4.9.2运行的结果是8。
VS2015:
GCC4.9.2:
看下面关于C语言的自增和自减的描述:
Since the increment/decrement operator modifies its operand, use of such
an operand more than once within the same expression can produce
undefined results
由于自增/自减运算符修改它的操作数,所以在同一个表达式中多次使用这种操作数可能导致未定义的行为。
这是cppreference关于未定义行为表达式的例子:
建议以后不要写这种代码,容易出现问题,把一行复杂的语句拆成几个语句,对你、对看代码的人、对编译器、对你写的程序都好。
热心网友 时间:2024-08-06 16:01
此题考a--和--a以及优先级问题热心网友 时间:2024-08-06 15:59
如果本来a+a应该是10.热心网友 时间:2024-08-06 15:55
同一个表达式中,变量的++,-- 运算执行次序是非常依赖编译器的