作业帮 > 综合 > 作业

C语言输出求解释.

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/27 18:54:47
C语言输出求解释.
在C语言中,有很多写法都是未定义行为,比如这种将同一个变量的++放到一个表达式中,就是未定义行为.
未定义行为的含义是,C语言标准没有强制要求必须如何实现,从而导致了可能不同的编译器有不同的行为,或者不同的平台有不同的行为,或者不同的运行时环境有不同的行为.这就使得这种代码很被动,是应该避免这样写的.
就这段代码来说,这些i的表达式和++,--的计算顺序是未定义的,可能先都把i取出来作为参数,然后再计算++--,然后调用函数,也可能依次计算再传给函数调用.