从左到右评估顺序的语言中的序列点?
当评估顺序被指定为“从左到右”而语言是(伪)C样时,它们是以下示例中的序列点?
int x = 1;
int z = x-- + x; // z = 1 + 0 or z = 1 + 1?
my_func(x++); // x incremented before or after my_func execution?
my_func(x++ + --x); // combining those above
没有找到相关结果
已邀请:
1 个回复
踩什不
由于
不是C中的序列点,因此上述语句的结果是未定义的。
在
运行之前递增,但是使用旧值
作为参数调用
。
未定义的原因与第一个原因相同。