【发布时间】:2012-02-20 06:10:02
【问题描述】:
当我们对 unsigned short int 执行任何操作时,即使在两种数据类型具有相同大小的机器上,它也会被提升为 unsigned int。这种促销的目的是什么?它有什么帮助?不就是换个名字吗(因为两者大小一样)?
【问题讨论】:
-
从 C 类型系统的角度来看,类型仍然不同,即使它们在您的特定平台上消耗相同数量的内存。
-
@Reuben 你能举个例子说明这对你有什么帮助吗?我们需要担心这样的转换吗?这会是一个潜在的错误吗?
-
存在
sizeof(unsigned short int) != sizeof(unsigned int)的现存平台/机器/操作系统 -
那么我们可以说这样的转换永远不会对 sizeof(unsigned short int) == sizeof(unsigned int) 的机器产生任何影响
-
你在什么操作系统上运行?那是唯一你在你的程序的整个未来都需要运行的操作系统吗?
标签: c