左操作数为负数时未定义的行为

2023-12-02

几天前,我在那里参加了微软 GD 实习在线考试。我一直在研究负数左移是一种未定义的行为,但该论文的 30 个问题中几乎有 7 个问题与移位运算符相关,其中大约 5 个问题涉及将负数向左移动,而且他们没有选择说“未定义”行为”。看到这一幕我很震惊。所以,我的问题是这个 C 标准有改变吗?现在已经定义了吗? 示例问题:

printf("%d",-1<<10);

I marked its answer as -1024 by the logic 2^10*-1

我什至在 gcc 上运行了这个,它给我的 o/p 为 -1024 nly (当我回家时。)


规则没有改变。它在技术上仍然是未定义的。

引用 C 标准(n1548 第 6.5.7 节第 4 段):

E1 否则,行为是未定义的。

它清楚地表明如果E1不是无符号的或带有非负值的符号,行为未定义。

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

左操作数为负数时未定义的行为 的相关文章

  • WPF DataGrid 多选

    我读过几篇关于这个主题的文章 但很多都是来自 VS 或框架的早期版本 我想做的是从 dataGrid 中选择多行并将这些行返回到绑定的可观察集合中 我尝试创建一个属性 类型 并将其添加到可观察集合中 它适用于单个记录 但代码永远不会触发多个
  • BASIC 中的 C 语言中的 PeekInt、PokeInt、Peek、Poke 等效项

    我想知道该命令的等效项是什么Peek and Poke 基本和其他变体 用 C 语言 类似PeekInt PokeInt 整数 涉及内存条的东西 我知道在 C 语言中有很多方法可以做到这一点 我正在尝试将基本程序移植到 C 语言 这只是使用
  • 没有特殊字符的密码验证器

    我是 RegEx 的新手 已经进行了大量搜索 但没有找到任何具体内容 我正在编写一个验证密码字符串的正则表达式 可接受的字符串必须至少具有 4 种字符类型中的 3 种 数字 小写字母 大写字母 特殊字符 我对包含有一个想法 也就是说 如果这
  • 通过引用传递 [C++]、[Qt]

    我写了这样的东西 class Storage public Storage QString key const int value const void add item QString int private QMap
  • std::list 线程push_back、front、pop_front

    std list 线程安全吗 我假设不是这样 所以我添加了自己的同步机制 我认为我有正确的术语 但我仍然遇到问题 每个函数都由单独的线程调用 Thread1 不能等待 它必须尽可能快 std list
  • C++11 删除重写方法

    Preface 这是一个关于最佳实践的问题 涉及 C 11 中引入的删除运算符的新含义 当应用于覆盖继承父类的虚拟方法的子类时 背景 根据标准 引用的第一个用例是明确禁止调用某些类型的函数 否则转换将是隐式的 例如最新版本第 8 4 3 节
  • free 和 malloc 在 C 中如何工作?

    我试图弄清楚如果我尝试 从中间 释放指针会发生什么 例如 看下面的代码 char ptr char malloc 10 sizeof char for char i 0 i lt 10 i ptr i i 10 ptr ptr ptr pt
  • -webkit-box-shadow 与 QtWebKit 模糊?

    当时有什么方法可以实现 webkit box shadow 的工作模糊吗 看完这篇评论错误报告 https bugs webkit org show bug cgi id 23291 我认识到这仍然是一个问题 尽管错误报告被标记为RESOL
  • 重载 (c)begin/(c)end

    我试图超载 c begin c end类的函数 以便能够调用 C 11 基于范围的 for 循环 它在大多数情况下都有效 但我无法理解和解决其中一个问题 for auto const point fProjectData gt getPoi
  • 使用 C# 中的 CsvHelper 将不同文化的 csv 解析为十进制

    C 中 CsvHelper 解析小数的问题 我创建了一个从 byte 而不是文件获取 csv 文件的类 并且它工作正常 public static List
  • 为什么 C# 2.0 之后没有 ISO 或 ECMA 标准化?

    我已经开始学习 C 并正在寻找标准规范 但发现大于 2 0 的 C 版本并未由 ISO 或 ECMA 标准化 或者是我从 Wikipedia 收集到的 这有什么原因吗 因为编写 审查 验证 发布 处理反馈 修订 重新发布等复杂的规范文档需要
  • 空指针与 int 等价

    Bjarne 在 C 编程语言 中写道 空指针与整数零不同 但 0 可以用作空指针的指针初始值设定项 这是否意味着 void voidPointer 0 int zero 0 int castPointer reinterpret cast
  • 如何在当前 Visual Studio 主机内的 Visual Studio 扩展中调试使用 Roslyn 编译的代码?

    我有一个 Visual Studio 扩展 它使用 Roslyn 获取当前打开的解决方案中的项目 编译它并从中运行方法 程序员可以修改该项目 我已从当前 VisualStudioWorkspace 成功编译了 Visual Studio 扩
  • 如何实例化 ODataQueryOptions

    我有一个工作 简化 ODataController用下面的方法 public class MyTypeController ODataController HttpGet EnableQuery ODataRoute myTypes pub
  • 编译时展开 for 循环内的模板参数?

    维基百科 here http en wikipedia org wiki Template metaprogramming Compile time code optimization 给出了 for 循环的编译时展开 我想知道我们是否可以
  • 使用特定参数从 SQL 数据库填充组合框

    我在使用参数从 sql server 获取特定值时遇到问题 任何人都可以解释一下为什么它在 winfom 上工作但在 wpf 上不起作用以及我如何修复它 我的代码 private void UpdateItems COMBOBOX1 Ite
  • C# 使用“?” if else 语句设置值这叫什么

    嘿 我刚刚看到以下声明 return name null name NA 我只是想知道这在 NET 中叫什么 是吗 代表即然后执行此操作 这是一个俗称的 条件运算符 三元运算符 http en wikipedia org wiki Tern
  • DotNetZip:如何提取文件,但忽略zip文件中的路径?

    尝试将文件提取到给定文件夹 忽略 zip 文件中的路径 但似乎没有办法 考虑到其中实现的所有其他好东西 这似乎是一个相当基本的要求 我缺少什么 代码是 using Ionic Zip ZipFile zf Ionic Zip ZipFile
  • 类型或命名空间“MyNamespace”不存在等

    我有通常的类型或命名空间名称不存在错误 除了我引用了程序集 using 语句没有显示为不正确 并且我引用的类是公共的 事实上 我在不同的解决方案中引用并使用相同的程序集来执行相同的操作 并且效果很好 顺便说一句 这是VS2010 有人有什么
  • 现代编译器是否优化乘以 1 和 -1

    如果我写 template

随机推荐

  • jQTouch在AJAX页面加载时执行代码

    当内容是静态时 a href nearme Click a 当内容是AJAX时 a href page html Click a 如何绑定 AJAX page html 加载后发生的事情 这个问题与 jqtouch 有关 它从常规锚标记发出
  • 使用 Web 部署跳过 XML 文档文件

    我正在尝试使用 Web Deploy 发布 NET Web 服务 目前 它在包中包含 XML 文档文件 我在 Visual Studio 的项目属性的 生成 选项卡中取消选中 XML 文档文件 这会阻止发布该 XML 文件 但该项目引用了许
  • 如何在 RabbitMQ 中设置重试次数?

    我正在使用 RabbitMQ 并且有一个保存电子邮件消息的队列 我的消费者服务使消息出队并尝试发送它们 如果由于任何原因我的消费者无法发送消息 我想重新排队消息以再次发送 我意识到我可以执行 basicNack 并将重新排队标志设置为 tr
  • Android SDK 管理器的 GUI 消失了吗?

    我很少为 Android 做一些事情 所以我有点困惑 以前有两种类型的安装 Android Studio 和 Android SDK 我有IDEA 所以不需要Studio 通常我会下载带有 UI 工具来下载其组件的 SDK 我刚得到http
  • cakephp 模型验证错误消息未显示在 hasOne 关联中

    我想要做model验证与association以单一形式 我有两张桌子users 父表 和user details 子表 现在模型验证仅适用于用户表 我也希望它适用于 userDetails 表 它们之间的关系是hasOne 验证仅适用于用
  • CSS 2.1 规范:不折叠父级边距的基本原理(当父级是浮动的或具有除可见之外的溢出时)

    The CSS 2 1 规范 第 8 3 1 节在折叠边距上指出 建立新块格式化上下文的元素的边距 例如 因为浮动和带有 可见 以外的 溢出 的元素 不会 与他们流入的孩子一起崩溃 我花了一段时间才意识到块格式化上下文是 由父母建立并应用于
  • Spring security 自定义 FilterInitationSecurityMetadataSource 实现 403 禁止问题

    简而言之 我正在尝试实现一个自定义 FilterInitationSecurityMetadataSource 以便使用 spring security 5 0 6 和 Spring Boot 2 0 3 在我的 Web 应用程序中动态保护
  • 在 Symfony 2 中使用 gzip / 压缩而不使用 mod_deflate

    我正在研究两个不同的Symfony 2 8项目运行在不同的服务器上 它想使用压缩来加快加载速度 我找到的所有资源都指向mod deflate 但是虽然第一台服务器不提供mod deflate根本 第二个服务器无法使用mod deflate
  • 使用 Powershell Out-Printer 到文件时控制输出位置

    我有一个 Powershell 脚本 它从服务器上的文件夹中检索所有图像文件 jpg png 并将它们 打印 到一个文件 特别是使用特定打印驱动程序的 prn 文件 所有这些都运行良好 问题是我无法弄清楚如何控制 打印 的输出的位置 即它将
  • 如何在 vb.net 中闪烁/闪烁任务栏图标?

    我需要使我的 vb net 应用程序能够在应用程序中收到通知时闪烁 闪烁以吸引用户的注意 就像此图中的 DW 图标一样 我已经在谷歌上搜索了一段时间 并尝试了各种代码示例 但都没有成功 这是我到目前为止所得到的 Public Class F
  • [[NSDate date] keep] 和 [[NSDate alloc] init] 之间的区别

    由于以下两者具有相同的目的 today NSDate date retain and today NSDate alloc init 那么它们之间有什么区别呢 这里的任何事情都与内存分配方法有关 或者其他什么是相应地使用它们的原因 NSDa
  • 如何左右对齐 Flexbox 列?

    使用典型的 CSS 我可以将两列中的一列向左浮动 另一列向右浮动 中间有一些装订线空间 我该如何使用 Flexbox 来做到这一点 http jsfiddle net 1sp9jd32 container width 500px borde
  • Perl:V 5.8.8:在 CentOS5/RHEL5 上找不到 auto/XML/LibXSLT/new.al

    我正进入 状态 无法找到 auto XML LibXSLT new al 我的 CentOS5 机器上安装 Perl 5 8 8 时出错 此问题与 libxml2 和 perl 模块有关XML LibXML XML LibXSLT 对于 1
  • 为什么在函数调用中捕获对象的值?

    当您单击此代码时 应该会弹出一个带有图像编号的警报 for var i 0 i lt 10 i img i click function alert i 你可以看到它不起作用http jsfiddle net upFaJ 我知道这是因为所有
  • DIV 未显示在 Chrome 中

    我刚刚做了一个非常简单的网站 但遇到了问题 在 Firefox 和 Safari 中 我可以看到 id 为 sponsors 的 DIV 但在 Chrome 中它消失了 我在Mac上 有人有解决办法吗 http www tweetup vn
  • 异常:[!]您的应用程序正在使用不受支持的 Gradle 项目

    我正在尝试运行现有的 flutter 应用程序 但收到此异常 我该如何解决这个问题 例外 您的应用程序正在使用不受支持的 Gradle 项目 要解决此问题 请通过运行创建一个新项目flutter create t app
  • HTTP 到 HTTPS 重定向不适用于现有规则

    我已经做了三天了 没有任何结果 我有一个现有的 http 网站 它有很多重定向规则 具体取决于 URL 友好链接 我现在需要强制加载到 https Google 最终会将它们从索引中删除 但有很多指向我的第三方网站页面的链接无法物理改变 下
  • 在 Haskell 中生成斐波那契数?

    在Haskell中 如何根据第n个斐波那契数等于第 n 2 个斐波那契数加上第 n 1 个斐波那契数的性质生成斐波那契数 我见过这个 fibs Integer fibs 1 1 zipWith fibs tail fibs 我不太明白这一点
  • 如何在 R 中提取 1x1 数组切片作为矩阵?

    我正在使用 3D 阵列 函数从用户处获取 2D 数组切片 矩阵 并使用行和列名称 数组的相应暗名称 将其可视化 如果数组维度 gt 1 它就可以正常工作 但是 如果我有 1x1x1 数组 我无法将切片提取为矩阵 a lt array 1 c
  • 左操作数为负数时未定义的行为

    几天前 我在那里参加了微软 GD 实习在线考试 我一直在研究负数左移是一种未定义的行为 但该论文的 30 个问题中几乎有 7 个问题与移位运算符相关 其中大约 5 个问题涉及将负数向左移动 而且他们没有选择说 未定义 行为 看到这一幕我很震