题库首页 › GESP等级认证(C++) › 题目 25365

关于以下程序段,说法正确的是( )。 int x=10; cout<<(x++) + (++x)<<endl;

A:C++11 标准中,这是未定义行为,不同的环境有可能出现不同的结果
B:22
C:21
D:20

正确答案:A

答案解析

分析表达式中变量x的初始值及其参与运算的顺序。确定输出操作符<<是否对同一变量进行多次读取或修改。若表达式涉及未序列化的副作用,则其求值顺序依赖编译器实现。检查标准规定:当同一标量对象在连续求值中被修改且存在未排序依赖时,行为由具体实现定义。根据C++标准对求值顺序和副作用的描述,判断程序是否落入未定义或实现定义行为范畴。

试卷来源:202603 CCF-GESP编程能力等级认证C++三级真题

本卷相关题目

在线做题 同科目题库