我们如何解释表达式 (++x)+(++x)+(++x) 的结果? [复制]

2023-12-07

x = 1;
std::cout << ((++x)+(++x)+(++x));

我期望输出是11,但实际上是12. Why?


我们通过期待来解释它未定义的行为而不是任何特定的结果。由于表达式尝试多次修改 x 而无需干预序列点 its 行为未定义.

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

我们如何解释表达式 (++x)+(++x)+(++x) 的结果? [复制] 的相关文章

  • 部署 MVC4 项目时出错:找不到文件或程序集

    过去 我只需使用 Visual Studio 2012 发布到 AWS 菜单项即可部署我的 MVC4 网站 到 AWS Elastic Beanstalk 现在 程序可以在本地编译并运行 但无法部署 从消息来看 它似乎正在寻找不在当前部署的
  • C++:无法使用scoped_allocator_adaptor传播polymorphic_allocator

    我有一个vector
  • 如何在C++中实现模板类协变?

    是否可以以这样一种方式实现类模板 如果模板参数相关 一个对象可以转换为另一个对象 这是一个展示这个想法的例子 当然它不会编译 struct Base struct Derived Base template
  • 嵌入式系统中的malloc [重复]

    这个问题在这里已经有答案了 我正在使用嵌入式系统 该应用程序在 AT91SAMxxxx 和 cortex m3 lpc17xxx 上运行 我正在研究动态内存分配 因为它会极大地改变应用程序的外观 并给我更多的力量 我认为我唯一真正的路线是为
  • C# 中值类型和引用类型有什么区别? [复制]

    这个问题在这里已经有答案了 我知道一些差异 值类型存储在堆栈上 而引用类型存储在托管堆上 值类型变量直接包含它们的值 而引用变量仅包含对托管堆上创建的对象位置的引用 我错过了任何其他区别吗 如果是的话 它们是什么 请阅读 堆栈是一个实现细节
  • 如何在 WPF RichTextBox 中跟踪 TextPointer?

    我正在尝试了解 WPF RichTextBox 中的 TextPointer 类 我希望能够跟踪它们 以便我可以将信息与文本中的区域相关联 我目前正在使用一个非常简单的示例来尝试弄清楚发生了什么 在 PreviewKeyDown 事件中 我
  • 如何针对 Nancy 中的 Active Directory 进行身份验证?

    这是一篇过时的文章 但是http msdn microsoft com en us library ff650308 aspx paght000026 step3 http msdn microsoft com en us library
  • 按字典顺序对整数数组进行排序 C++

    我想按字典顺序对一个大整数数组 例如 100 万个元素 进行排序 Example input 100 21 22 99 1 927 sorted 1 100 21 22 927 99 我用最简单的方法做到了 将所有数字转换为字符串 非常昂贵
  • 在 ASP.Net Core 2.0 中导出到 Excel

    我曾经使用下面的代码在 ASP NET MVC 中将数据导出到 Excel Response AppendHeader content disposition attachment filename ExportedHtml xls Res
  • 编译的表达式树会泄漏吗?

    根据我的理解 JIT 代码在程序运行时永远不会从内存中释放 这是否意味着重复调用 Compile 表达式树上会泄漏内存吗 这意味着仅在静态构造函数中编译表达式树或以其他方式缓存它们 这可能不那么简单 正确的 他们可能是GCed Lambda
  • 线程、进程和 Application.Exit()

    我的应用程序由主消息循环 GUI 和线程 Task Factory 组成 在线程中我调用一些第三方应用程序var p new Process 但是当我调用Application Exit 在消息循环中 我可以看到在线程中启动的进程仍在内存中
  • 用 C 实现 Unix shell:检查文件是否可执行

    我正在努力用 C 语言实现 Unix shell 目前正在处理相对路径的问题 特别是在输入命令时 现在 我每次都必须输入可执行文件的完整路径 而我宁愿简单地输入 ls 或 cat 我已经设法获取 PATH 环境变量 我的想法是在 字符处拆分
  • 将应用程序从 Microsoft Access 迁移到 VB 或 C#.NET

    我目前正试图说服管理层需要将我们的应用程序之一移植到 NET 该应用程序已经发展成为 Access 中的一个庞然大物 SQL 后端 拥有 700 个链接表 650 个表单 子表单 130 个模块和 850 个查询 我几乎知道这样做的所有主要
  • EPPlus Excel 更改单元格颜色

    我正在尝试将给定单元格的颜色设置为另一个单元格的颜色 该单元格已在模板中着色 但worksheet Cells row col Style Fill BackgroundColor似乎没有get财产 是否可以做到这一点 或者我是否必须在互联
  • GDK3/GTK3窗口更新的精确定时

    我有一个使用 GTK 用 C 语言编写的应用程序 尽管该语言对于这个问题可能并不重要 这个应用程序有全屏gtk window与单个gtk drawing area 对于绘图区域 我已经通过注册了一个刻度回调gtk widget add ti
  • 窗体最大化时自动缩放子控件

    有没有办法在最大化屏幕或更改分辨率时使 Windows 窗体上的所有内容自动缩放 我发现手动缩放它是正确的 但是当切换分辨率时我每次都必须更改它 this AutoScaleDimensions new System Drawing Siz
  • 如何在 C# 中播放在线资源中的 .mp3 文件?

    我的问题与此非常相似question https stackoverflow com questions 7556672 mp3 play from stream on c sharp 我有音乐网址 网址如http site com aud
  • 将 viewbag 从操作控制器传递到部分视图

    我有一个带有部分视图的 mvc 视图 控制器中有一个 ActionResult 方法 它将返回 PartialView 因此 我需要将 ViewBag 数据从 ActionResult 方法传递到 Partial View 这是我的控制器
  • 为什么 strtok 会导致分段错误?

    为什么下面的代码给出了Seg 最后一行有问题吗 char m ReadName printf nRead String s n m Writes OK char token token strtok m 如前所述 读取字符串打印没有问题 但
  • 不同类型的指针可以互相分配吗?

    考虑到 T1 p1 T2 p2 我们可以将 p1 分配给 p2 或反之亦然吗 如果是这样 是否可以不使用强制转换来完成 或者我们必须使用强制转换 首先 让我们考虑不进行强制转换的分配 C 2018 6 5 16 1 1 列出了简单赋值的约束

随机推荐

  • 使用数组参数调用本机函数

    我完全不知道如何使用数组参数调用本机 dll 中的函数 Example 该函数在 C 项目中定义为 DllImport Project2 dll SetLastError true CallingConvention CallingConv
  • 如何将对象注入 Ninject 模块

    我正在使用 Ninject 进行 DI 我有 Ninject 模块 它将一些服务绑定到内核 并使用其他模块中的绑定对象作为服务 为了弄清楚这种情况 让我们看几行代码 这是我的安全模块 它提供了一个名为PermissionManagerCon
  • 使用 NHibernate QueryOver 实现“不存在的地方”

    使用新的QueryOverNHibernate 中的 API 我需要做一些相当于 select c from Category c where not exists select from CategoryProduct cp where
  • 在 VS2010 中将 version=10.0.0.0 替换为 11.0.0.0 进行更改后出现新的构建错误

    我遇到了同样的问题构建错误 创建 Excel 2010 的 VSTO 插件 根据解决方案进行更改后 我得到了新的错误 The InitializeDefaultProperties task could not be loaded from
  • XmlSerializer 保存临时文件的最安全位置

    我注意到 XmlSerializer 需要使用磁盘空间来执行其命令 如果没有可写的 temp 文件夹 则会失败并出现如下错误 Source System Xml Message Unable to generate a temporary
  • Task.Run(async () => wait MethodAsync()).Result 和 MethodAsync().Result 之间有什么区别吗? [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我需要实现一个不支持异步的第三方接口 特别是来自 automapper 的 IValueResolver 我想知道这两段代码有什么区别 使用第一个而不是第二个有什么优点吗 我将在
  • 在 Spring Boot 中每个数据库连接开始时运行 SQL 语句

    如何使用Spring Boot获得数据库连接后直接运行自定义SQL语句 每次建立新连接时都需要运行 SQL 该解决方案应该与 Spring Boot 默认 DataSource 实现 我认为是 Tomcat 池数据源 一起使用 声明是什么并
  • 什么是互递归类型?

    如果在 ML 中 递归数据类型的示例是 datatype llist Nil Node of int llist 什么是机器学习中的相互递归数据类型以及它的示例是什么 这些愚蠢的数据类型就是这样的一个例子 datatype a A Ab o
  • FirebaseInstanceId:传递消息时出错:MI 设备中未找到 ServiceIntent

    当应用程序长时间处于后台时 我们发现了此错误 我在小米设备中发现了这个问题 我在三星进行了测试 它运行完美 但在小米中 它总是抛出相同的错误 None
  • findOne 可以先匹配还是最后匹配?

    我专门使用猫鼬 尽管我不认为这有那么重要 例如 假设我有一个名为 MongoQueue 的集合 并且我向该队列添加了一些人 MongoQueue save function err firstPerson if err console lo
  • 使用不同的因变量重复回归

    我已经在 Stack 和 google 上搜索了解决方案 但没有找到解决我的问题的方法 我有大约 40 个因变量 我的目标是获得调整后的均值 lsmeans 在考虑了一些协变量后 我需要调整 A 组和 B 组的均值 我的最终对象应该是一个数
  • 在 matplotlib 中使用更多颜色进行绘图

    我正在尝试使用 matplotlib 绘制散点图 但收到 IndexError 从空列表中弹出 错误 我不知道如何修复它 import matplotlib pyplot as plt import matplotlib import nu
  • 表格单元格在行内右对齐

    我试图弄清楚如何将单元格移动到 HTML 表格的左侧 我想在最后一行使用更少的单元格 默认情况下它位于右侧 例如我有这张表 table tr th one th th two th th three th tr tr td one td t
  • Android v2 MapFragment 在 Scrollview 中滚动时抖动

    我正在使用 SupportMapFragment 在 ScrollView 中显示静态地图 我不喜欢移动 缩放地图 只显示位置 当我向下 向上滚动时 地图在其边界内晃动 感觉非常滞后 我的问题是 如何消除这种滞后 或者如何使用 v2 api
  • 在 Java 中 Ping 多个服务器 [重复]

    这个问题在这里已经有答案了 我有一个程序可以向服务器发送 ping 请求 该列表很大 如果IP无法到达 需要时间才能转到下一个IP 我希望 对于每一个IP 它应该创建一个新线程并同时处理所有线程 这是代码 for int i 0 i lt
  • Jackson @JsonProperty(required=true) 不会抛出异常

    我正在使用 jackson 2 2 注释 JsonProperty 并将 required 设置为 true 通过 ObjectMapper readValue 方法反序列化不包含该属性的 json 文件时 不会引发异常 它应该以不同的方式
  • 在 SQL Server 中执行列值[重复]

    这个问题在这里已经有答案了 我需要对 SQL 表中保存的值进行算术运算 例如 我在下一列中的值为 5 10 我想要 15 EQUATION VALUE 2 5 7 6 8 14 根据方程式我需要计算该值 正如您现在所知 SQL Server
  • 在运行时修改类定义的注释字符串参数

    想象一下有一个类 Something someProperty some value public class Foobar 它已经编译 我无法控制源代码 并且是 jvm 启动时类路径的一部分 我希望能够在运行时将 某些值 更改为其他值 这
  • 过程中表值参数中的标识列,如何定义 DataTable

    是否可以将类型为 table 的参数以及类型为 int IDENTITY 1 1 的列传递给过程 并使用作为输入参数传递的 DataTable 对象来执行此存储过程 我收到以下错误 插入表变量不允许的标识列 表值参数 xxxxx 的数据不符
  • 我们如何解释表达式 (++x)+(++x)+(++x) 的结果? [复制]

    这个问题在这里已经有答案了 x 1 std cout lt lt x x x 我期望输出是11 但实际上是12 Why 我们通过期待来解释它未定义的行为而不是任何特定的结果 由于表达式尝试多次修改 x 而无需干预序列点 its 行为未定义