C++ 算术运算符

2023-11-23

刚刚在技术面试中被问到了一个让我有点困惑的问题。

问题如下:

If

int i = -1, int j = -1, and int k = -1, 

我们运行以下行:

++i && ++j && ++k

i、j 和 k 的新值是多少?我感到困惑的原因是,由于我们没有将此表达式分配给任何东西,因此 and 运算符似乎不应该产生任何区别(只有增量运算符应该)。然而,运行一个简单的测试程序很快证明我错了。有人可以向我解释一下吗,因为我以前从未见过这个练习。


这里的关键是&&是短路。

So, ++i首先被评估。它递增i并返回新值,即0,因此表达式的其余部分不会被计算。

这些值应该是0, -1, -1如果我没错的话。

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

C++ 算术运算符 的相关文章

随机推荐

  • Mac 开发的 PyObjc 与 RubyCocoa:哪个更成熟?

    我一直想尝试一下 Ruby 或 Python 同时我也一直想做一些 Cocoa 编程 因此 我认为实现这两个目标的最佳方法是使用 Ruby 或 Python 到 Objective C 的桥梁 PyObjc 或 RubyCocoa 来开发一
  • Quartz Scheduler 关闭后不停止

    我在 jboss 4 0 5 上使用当前最新的quartz 1 8 3 石英作业是持久的并保存到本地数据库中 当我在执行的石英调度程序对象上调用 shutdown 或standby 方法时 作业仍然由调度程序继续执行 只是作业状态为空并且执
  • 状态 Property 中的令牌 PropertyName 将导致无效的 JSON 对象。使用自定义 JsonConverter

    我正在尝试使用 Json NET 和自定义序列化程序序列化 反序列化 NET 数据集 我知道你们中的许多人会告诉我不要这样做 我在其他帖子上看到过这一点 我有充分的理由并希望继续沿着这条路走 我的序列化基于以下事实 NET DataSet
  • 获取 Django url 模板标签中 javascript 变量的值

    众所周知 有一种通过使用 django 模板标签 url 定向到 URL 的 DRY 方式 例如 url someview arg1 X 在这里 我希望 X 是 JavaScript 变量的值 例如tmp 但以下不起作用 我应该如何获取模板
  • 使用 AutoMapper 映射未知类型

    我在用着AutoMapper将一个对象的属性复制到另一个对象 这是我的代码 Get type and create first object Type itemType Type GetType itemTypeName var item
  • Android 6.0 Adb wifi 连接

    我有一台装有 Android 6 0 的 Nexus 6 设备 库存版本无需 root 为了避免用 USB 电缆永久连接设备 我使用了这个程序 我通过 USB 电缆将设备连接到 PC 在终端上输入adb tcpip 5555 type ad
  • 以字符串形式返回 Matplotlib 图像

    我在 django 应用程序中使用 matplotlib 想直接返回渲染的图像 到目前为止我可以走plt savefig 然后返回图像的位置 我想做的是 return HttpResponse plt renderfig mimetype
  • 使用正则表达式 re.sub 删除指定单词之前的所有内容(包括指定单词)

    我有一个字符串 看起来像 Blah blah blah 更新 2012 年 8 月 23 日 我想使用正则表达式从中提取日期Aug 23 2012 我在书库里找到一篇文章 内容类似 正则表达式删除字符之前的所有文本 但是当我尝试时这也不起作
  • Windows 上的信号处理

    我有一个独立的 PHP 脚本 我将处理从 Windows 操作系统发送的信号 以便在发出 终止信号 时正常关闭 我怎样才能在 Windows 上做到这一点 2020 年 3 月更新 从 PHP 7 4 开始 有sapi windows se
  • IBM Websphere:Spring AOP 出现错误

    我在启动服务器时收到以下错误 应用程序中包含 Spring 和 AspectJ 类 Caused by java lang VerifyError JVMVRFY013 class loading constraint violated c
  • 在 IE6 中调试 JavaScript [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我正在寻找一个可以调试 JavaScript 的工具withinIE6 我的意思是我希望调试器在浏览器中运行 a l 萤火虫 到目前为止我已经尝试过
  • Dojo AMD:无法在 require 中调用函数

    我确实是 dojo 的新手 但当我开始使用 dojo 版本 1 7 2 开发新应用程序时 我也想使用新的 AMD 函数语法 不幸的是我似乎不明白 最让我烦恼的是我不能简单地调用 require 块内的任何函数 例如 我有一个页面 打开时会创
  • 按下后退按钮时如何保留可滚动区域的滚动位置?

    我在一个大的可滚动 div 中有一长串链接 每次当用户单击链接然后单击后退按钮时 它都会从 div 的最顶部开始 这对我们的用户来说并不友好 有什么方法可以让浏览器在按后退按钮时滚动到上一个位置 非常感谢 在页面卸载期间 获取滚动位置并将其
  • pyplot:以 e 为基数的 loglog()

    Python 和 matplotlib 新手是从 R 过来的 所以我希望这个问题不是太白痴 我正在尝试在自然对数刻度上绘制对数对数图 但经过一番谷歌搜索后 我无法弄清楚如何强制 pyplot 在轴上使用基本 e 刻度 我目前拥有的代码 im
  • 在 Tensorflow 中使用字符串标签

    我仍在尝试使用自己的图像数据运行 Tensorflow 我能够使用此示例中的conevert to 函数创建一个 tfrecords文件link 现在我想用该示例中的代码来训练网络link 但在 read and decode 函数中失败
  • 如何序列化第三方不可序列化的最终类(例如google的LatLng类)?

    我在用着Google 的 LatLng 类来自 v2 Google Play 服务 该特定类是最终类 未实现java io Serializable 有什么办法可以做到吗LatLng类工具Serializable public class
  • 如何在静态库中存储版本号?

    如何将版本号存储在静态库 file a 中 然后在 Linux 中检查其版本 附 我需要能够随时检查文件的版本 而无需仅使用 shell 实用程序使用任何特殊的可执行文件 除了提供 Puppe 提到的静态字符串之外 通常的做法是提供一个宏来
  • 齐射请求的匿名侦听器导致内存泄漏

    我正在使用 volley 库进行网络服务调用 我创建了一个通用类来进行所有 Web 服务调用并从那里进行服务调用 并为成功和错误响应创建了匿名侦听器 但是当我使用泄漏金丝雀时 它显示与上下文相关的内存泄漏 下面是我的代码片段 public
  • Hive 中的“InputFormat、OutputFormat”和“Stored as”有什么区别?

    我是大数据新手 目前正在学习 Hive 我理解 Hive 中的 InputFormat 和 OutputFormat 的概念是 SerDe 的一部分 我还了解到 存储为 用于以特定格式存储文件 就像 InputFormat 一样 但我不明白
  • C++ 算术运算符

    刚刚在技术面试中被问到了一个让我有点困惑的问题 问题如下 If int i 1 int j 1 and int k 1 我们运行以下行 i j k i j 和 k 的新值是多少 我感到困惑的原因是 由于我们没有将此表达式分配给任何东西 因此