?: 运算符在 C 中究竟如何工作?

2023-11-27

我有一个问题,编译器如何运行以下代码:

#include<stdio.h>

int main(void)
{
  int b=12, c=11;
  int d = (b == c++) ? (c+1) : (c-1);
  printf("d = %i\n", d);
}

我不知道为什么结果是‍‍‍d = 11.


In int d = (b == c++) ? (c+1) : (c-1);:

  • 的价值c++是当前值c, 11. 另外,c增加到 12。
  • b == 11是假的,因为b is 12.
  • Since (b == c++)是假的,(c-1)用来。另外,增量为c此时必须完成至 12。
  • Since c is 12, c-1 is 11.
  • d被初始化为该值 11。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

?: 运算符在 C 中究竟如何工作? 的相关文章

  • 编译时运算符

    有人可以列出 C 中可用的所有编译时运算符吗 C 中有两个运算符 无论操作数如何 它们的结果始终可以在编译时确定 它们是sizeof 1 and 2 当然 其他运算符的许多特殊用途可以在编译时解决 例如标准中列出的那些整数常量表达式 1 与
  • EF Core Group By 翻译支持条件总和

    听说 EF Core 2 1 将支持翻译小组 我感到非常兴奋 我下载了预览版并开始测试它 但发现我在很多地方仍然没有得到翻译分组 在下面的代码片段中 对 TotalFlagCases 的查询将阻止翻译分组工作 无论如何 我可以重写这个以便我
  • 秒表有最长运行时间吗?

    多久可以Stopwatch在 NET 中运行 如果达到该限制 它会回绕到负数还是从 0 重新开始 Stopwatch Elapsed返回一个TimeSpan From MSDN https learn microsoft com en us
  • 在哪里可以找到列出 SSE 内在函数操作的官方参考资料?

    是否有官方参考列出了 GCC 的 SSE 内部函数的操作 即 头文件中的函数 除了 Intel 的 vol 2 PDF 手册外 还有一个在线内在指南 https www intel com content www us en docs in
  • 查找c中结构元素的偏移量

    struct a struct b int i float j x struct c int k float l y z 谁能解释一下如何找到偏移量int k这样我们就可以找到地址int i Use offsetof 找到从开始处的偏移量z
  • BitTorrent 追踪器宣布问题

    我花了一点业余时间编写 BitTorrent 客户端 主要是出于好奇 但部分是出于提高我的 C 技能的愿望 我一直在使用理论维基 http wiki theory org BitTorrentSpecification作为我的向导 我已经建
  • 在 Windows 窗体中保存带有 Alpha 通道的单色位图会保存不同(错误)的颜色

    在 C NET 2 0 Windows 窗体 Visual Studio Express 2010 中 我保存由相同颜色组成的图像 Bitmap bitmap new Bitmap width height PixelFormat Form
  • OleDbDataAdapter 未填充所有行

    嘿 我正在使用 DataAdapter 读取 Excel 文件并用该数据填充数据表 这是我的查询和连接字符串 private string Query SELECT FROM Sheet1 private string ConnectStr
  • 不同枚举类型的范围和可转换性

    在什么条件下可以从一种枚举类型转换为另一种枚举类型 让我们考虑以下代码 include
  • 带动态元素的 WPF 启动屏幕。如何?

    我是 WPF 新手 我需要一些帮助 我有一个加载缓慢的 WPF 应用程序 因此我显示启动屏幕作为权宜之计 但是 我希望能够在每次运行时更改屏幕 并在文本区域中显示不同的引言 这是一个生产力应用程序 所以我将使用非愚蠢但激励性的引言 当然 如
  • WCF 中 SOAP 消息的数字签名

    我在 4 0 中有一个 WCF 服务 我需要向 SOAP 响应添加数字签名 我不太确定实际上应该如何完成 我相信响应应该类似于下面的链接中显示的内容 https spaces internet2 edu display ISWG Signe
  • 如何序列化/反序列化自定义数据集

    我有一个 winforms 应用程序 它使用强类型的自定义数据集来保存数据进行处理 它由数据库中的数据填充 我有一个用户控件 它接受任何自定义数据集并在数据网格中显示内容 这用于测试和调试 为了使控件可重用 我将自定义数据集视为普通的 Sy
  • Windows 窗体:如果文本太长,请添加新行到标签

    我正在使用 C 有时 从网络服务返回的文本 我在标签中显示 太长 并且会在表单边缘被截断 如果标签不适合表单 是否有一种简单的方法可以在标签中添加换行符 Thanks 如果您将标签设置为autosize 它会随着您输入的任何文本自动增长 为
  • WPF/C# 将自定义对象列表数据绑定到列表框?

    我在将自定义对象列表的数据绑定到ListBox in WPF 这是自定义对象 public class FileItem public string Name get set public string Path get set 这是列表
  • 通过指向其基址的指针删除 POD 对象是否安全?

    事实上 我正在考虑那些微不足道的可破坏物体 而不仅仅是POD http en wikipedia org wiki Plain old data structure 我不确定 POD 是否可以有基类 当我读到这个解释时is triviall
  • 将控制台重定向到 .NET 程序中的字符串

    如何重定向写入控制台的任何内容以写入字符串 对于您自己的流程 Console SetOut http msdn microsoft com en us library system console setout aspx并将其重定向到构建在
  • C# 成员变量继承

    我对 C 有点陌生 但我在编程方面有相当广泛的背景 我想做的事情 为游戏定义不同的 MapTiles 我已经像这样定义了 MapTile 基类 public class MapTile public Texture2D texture pu
  • 测试用例执行完成后,无论是否通过,如何将测试用例结果保存在变量中?

    我正在使用 NUNIT 在 Visual Studio 中使用 Selenium WebDriver 测试用例的代码是 我想在执行测试用例后立即在变量中记录测试用例通过或失败的情况 我怎样才能实现这一点 NUnit 假设您使用 NUnit
  • C# 模拟VolumeMute按下

    我得到以下代码来模拟音量静音按键 DllImport coredll dll SetLastError true static extern void keybd event byte bVk byte bScan int dwFlags
  • C# - OutOfMemoryException 在 JSON 文件上保存列表

    我正在尝试保存压力图的流数据 基本上我有一个压力矩阵定义为 double pressureMatrix new double e Data GetLength 0 e Data GetLength 1 基本上 我得到了其中之一pressur

随机推荐

  • 为什么 .html() 不能与使用 jquery 的 SVG 选择器一起使用?

    Question有人可以告诉我如何将 SVG 元素转换为字符串吗 我在用着canvg将我的 SVG 转换为图像 它必须首先在画布中渲染 canvg 方法期待一个SVG STRING code function updateChartImag
  • 使用 Url 视图帮助链接时从 URL 中删除参数

    使用 Url view helper 构建链接时 如果当前页面的 url 中有参数 则 Url view helper 生成的 url 也会包含参数 例如在页面中 控制器 操作 参数 值 下面的代码 a href Dashboard a 将
  • 如何从WKInterfaceButton获取标题

    要获得标题 有函数 setTitle 但是如何将 WKInterfaceButton 的标题作为字符串获取 我没有找到任何东西https developer apple com library prerelease ios document
  • Python 2 中的类型提示

    In PEP 484 类型提示被添加到 Python 3 中 其中包括typing模块 在Python 2中有什么办法可以做到这一点吗 我能想到的就是有一个装饰器添加到方法中来检查类型 但这会在运行时失败 并且不会像提示所允许的那样更早被捕
  • AWS S3 中的“KeyError: 'Records'” - Lambda 触发器

    我有以下 lambda 函数代码 用于简单地打印 S3 存储桶的上传事件的作者和元数据 from future import print function import json import urllib import boto3 pri
  • 解析Robot Framework的输出xml

    机器人框架吐出一个输出 XML 然后用于构建 HTML 报告 带有rebot 重新运行失败等 我需要解析此文件以生成其他报告 特别是 我需要解析正则表达式的测试用例文档 获取测试用例结果 然后构建报告 这是为了与遗留系统集成 Robot F
  • 如何用新的 viewController 替换当前的 viewController

    我正在尝试用新的视图控制器替换当前的视图控制器 我之前已经能够做到这一点 但我遇到了一些 BAD ACCESS 问题 这是当我想用新视图替换当前视图时将运行的代码 该函数将使用本地属性 self some data 非原子 保留 调用 vo
  • 从 PySpark DataFrame 中的 Python 列表列表中删除元素

    我正在尝试从 Python 列表中删除一个元素 sources 62 7 32 62 18 36 62 7 31 36 62 7 32 62 我希望能够删除一个元素 rm 来自上面列表中的每个列表 我编写了一个可以对列表列表执行此操作的函数
  • MFC中多行cstatic文本垂直居中

    怎样才能制作一个CStatic文本自动换行 多行 将结果垂直居中在控件的矩形中 我试图解决的问题是 我有一个CStatic控制旁边的CComboBox根据选择更新信息文本 该文本可以短也可以长 需要CStatic有时使用多线 有时不使用 我
  • 如何将 mime 类型添加到 htaccess 文件?

    我在向服务器添加 mime 类型时遇到问题 这是我当前的 htaccess AuthUserFile usr local www pass htpasswd AuthType Basic AuthName Mockups
  • elasticsearch 映射 tokenizer 关键字以避免分割标记并启用通配符

    例如 我尝试在给定字段上使用 angularjs 和 elasticsearch 创建自动完成功能countryname 它可以包含简单的名称 如 法国 西班牙 或 组合名称 如 塞拉利昂 在映射中该字段是not analyzed防止弹性标
  • 求包围一组点的边界多边形的面积

    我在天空图上有一系列点 我想找到这些点占据的面积 为此 我需要找到包含这些点的多边形的顶点 将这些点转换为等积投影 然后计算出面积 除了如何计算包围图形上的点的多边形的顶点之外 我还编写了所有代码 做这个的最好方式是什么 您选择的多边形不是
  • 在换行符处拆分单个单元格

    我有一个电子表格 其中的数据位于用换行符分隔的单个单元格中 我需要将单元格分成单独的行 以便我可以删除一些数据并重新组合 像这样 Item Status 285T1150 3 285T0680 1 1 Complete 285T1145 7
  • 如何在 Django 中测试 celery period_task?

    我有一个简单的周期性任务 from celery decorators import periodic task from celery task schedules import crontab from models import Su
  • 如何保存包含指针的ctypes对象

    我使用第 3 方库 它在大量计算后返回包含指针的 ctypes 对象 如何保存 ctypes 对象以及指针指向的内容以供以后使用 我试过 scipy io savemat gt 类型错误 无法将对象转换为数组 cPickle gt 包含指针
  • 使用 php 将事件添加到谷歌日历

    我正在开发一个客户端网络应用程序 用户可以在其中预订带有日期 时间 位置等的驱动器 客户要求将每次预订都添加为他的 Google 日历上的活动 我创建了一个 API 密钥并下载了 PHP API 客户端 https github com g
  • javascript中两个模块声明有什么区别?

    JavaScript 中模块的两次声明有什么不同 一个函数周围有括号 而另一个则没有 一篇文章说 注意匿名函数周围的 这是由 语言 因为以标记函数开头的语句是 始终被视为函数声明 包括 创建一个 函数表达式代替 检查时两者似乎都做了同样的事
  • 将函数保存在本地存储中

    我正在处理一些对象 其中包含要从浏览器显示和操作的大量数据 并且我想将其保存在本地存储中 为了保存对象 我使用了 JSON stringify 所以一切都变成文本 而且效果很好 bindingRef primo name primo mod
  • WP8 项目:“CompileXaml”任务意外失败

    我在计算机上重新安装了 Windows 在 Visual Studio 2012 for Windows Phone 中打开任何 Windows Phone 8 项目后 收到以下错误消息 The CompileXaml task faile
  • ?: 运算符在 C 中究竟如何工作?

    我有一个问题 编译器如何运行以下代码 include