- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我很难以我很容易理解的方式找到关于这个主题的信息,所以我要求对我找到的内容进行审查。这都是关于转换和转换的。
在例子中我将提到:
(signed/unsigned) int bigger;
(signed/unsigned) char smaller;
截断 整数。 (更大->更小)
更大
以匹配更小
大小。
如果较大的值太大而不适合较小的类型,则会导致未定义的行为(纠正我)。然而,我的规则应该适用于所有机器(也请纠正我)并且结果应该是可预测的。
加宽整数(更小->更大)
a) signed char
-> signed int
b) signed char
-> unsigned int
c) unsigned char
-> signed int
d) unsigned char
-> unsigned int
我没有提到的可能会弹出的未定义/未指定行为在哪里?
最佳答案
整数转换永远不会产生未定义的行为(它可以产生实现定义的行为)。
到可以表示被转换值的类型的转换总是明确定义的:值只是保持不变。
到无符号类型的转换总是明确定义的:值取模 UINT_MAX+1(或目标类型允许的任何最大值)。
转换为无法表示正在转换的值的有符号类型会导致实现定义的值或实现定义的信号。
请注意,上述规则是根据整数值而不是位序列定义的。
关于c - 整数转换(缩小,扩大),未定义的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19273658/
有人可以解释一下为什么您会使用扩大或缩小转换吗?我已经阅读了很多关于这些的内容,但没有人给我一个实际的例子。谢谢! 最佳答案 (Java) 扩大和缩小转换与相关类型之间的转换有关。以抽象(超)类与其(
假设我有一个接口(interface): public interface FooInterface { public void someMethod(); } 我有一个实现这
我正在尝试用 ocaml 编写一个免费的 monad 库,关注 Control.Monad.Free来自haskell,但我在执行hoistFree 时陷入了困境。 hoistFree :: Func
我有这样的数据。每行代表该 ID 在某个日期的一个值。 ID Date Value A 2012-01-05 50 A 2012-01-08 100 A
我正在开发一个可以扩展/收缩的 SwiftUI List 单元,这是一个非常简单的东西,您可以在很多上下文中看到。类似于以下内容(以下内容在 UIKit 中实现): 说实话,我正在努力在 SwiftU
http://jsfiddle.net/bzL7p87k/ 我在这个表中有占位符,他们用特殊的词填充,但是当我有超过 4 行时怎么办?当我有 21 行的 21 个占位符时? 我的意思是:我只有一行与占
我需要在我的 Zoul 项目中使用一个库,它广泛使用 malloc 机制来分配动态内存。 问题是当这个库调用 malloc 时它返回 NULL 因为堆中没有足够的内存。 我试过这个简单的函数来查看程序
使用 bootstrap 4.0.0,我有以下代码: Title text text text Click me ... repeated many t
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 8 年前。 Improve this q
我有一个 TextView,我在其中设置了 HTML 文本。这篇文章有很多链接。当您点击一个链接时,它并不总是触发 onClick 方法。因此,我正在尝试扩展 ClickableSpan 的区域,以便
在 WPF 中,当用户将焦点放在 TextBox 中时,我想要一些动画,使 TextBox 变为多行并使其 Width 变大(在他打字时),当失去焦点时,TextBox 恢复到原来的大小。 大小未知。
我想在目录中搜索与任何单词列表匹配的任何文件。如果文件匹配,我想将该文件复制到一个新目录中。我创建了一小批测试文件并使以下代码正常工作: cp `grep -lir 'word\|word2\|wor
我有一个布局,左侧是图像,右侧是文本内容。我希望图像具有 100% 的高度,并且我希望保持图像的纵横比。文本内容应填充可用宽度。 我尝试使用 flex-box,但是图像 flex 元素不会根据图像大小
我使用 JHChainableAnimations增大(缩放) View 设置一个新值,然后再次将 View 缩小(缩放)到其原始大小。 我尝试过: var isGrowing = true
我不确定其他人是否会有这种奇怪的愿望,也就是说我意识到这可能是一个不寻常的请求。 我想采用顶部示例中的内容,并让它在除数“:”字符上自动变为“居中对齐”。 这是 Xcode 扩展程序可以编写的程序吗?
我正在为网站创建一个简单的 2 列布局,但遇到了一些问题。当我向应用了 float:left 的列添加填充时, float 会扩展超过我定义的宽度。我似乎无法在任何地方找到这个问题的答案。 最佳答案
我得到了一个组织为 的图片库.所有图像都在 元素,当我将鼠标移到其中一张图片上时,它应该会增长以向用户提供视觉反馈。问题是,当我只是使用 animate() 更改图像的大小时,其他图片将被推到一边,
我正在尝试放大最居中的 ListView 项目。 (最终,我希望将其扩展为一种简单轻巧的3D效果,元素在屏幕中间时会放大,在下方时会缩小,全黑背景和文本项放大和缩小……) 所以,我制作了一个虚拟 Li
我有一个 canvas,我希望它是 100% 屏幕宽度和至少 100% 屏幕高度,但如果以下 div 超出底部屏幕。 我正在使用 Trianglify 填充 Canvas 。 var patt
我很难以我很容易理解的方式找到关于这个主题的信息,所以我要求对我找到的内容进行审查。这都是关于转换和转换的。 在例子中我将提到: (signed/unsigned) int bigger; (sign
我是一名优秀的程序员,十分优秀!