C语言中的int到底有多少个字节?

365bet现场走地盘 ⌚ 2025-09-13 06:52:56 👤 admin 👁️ 6196 ❤️ 299
C语言中的int到底有多少个字节?

1. 网上一些现有的资料。

http://blog.csdn.net/lyl0625/article/details/7350045

http://atzishi.blog.163.com/blog/static/210838180201301910533629/

有很多中答案,但是都说不准到底是多少字节。

2. 《C程序设计语言》第2.2节 数据类型及其长度

C语言中只提供了下列几种基本类型数据:

char 字符型,占用一个字节,可以存放本地字符集中的一个字符。

int 整型,通常反映了所用机器中整数的最自然的长度。

float 单精度浮点型

double 双精度浮点型

此外,还可以在这些基本的数据类型前面加上一些限定符。short和long两个限定符用与限定整型:

short int sh;

long int counter;

在上述这种类型的声明中,关键字int可以省略。通常很多人也习惯这么做。

short与long两个限定符的引入可以为我们提供满足实际需要的不同长度的整型数。int通常代表特定机器中整数的自然长度。short类型通常为16位,long类型通常为32位,int类型可以为16位或32位。各编译器可以更具硬件特性自主选择合适的类型长度,但要遵循下列循环限制:short与int类型至少为16位,而long类型至少为32位,并且short类型不得长与int类型,而int类型不得长于long类型。

3. 《C++程序设计语言》附录C.2标准

标准中把许多重要事项宣布为由实现定义。这也意味着每个实现必须有为该种结构提供一个特定的,定义良好的行为方式,并必须将它写入文档。例如, unsigned char c1 = 64; // 有良好定义:char至少有8位,总能保存64 unsigned char c2 = 1256; // 实现定义的:如果char只有8位就会出现截断 c1的初始化具有良好的定义,因为一个char至少必须有8位。而对c2初始化的行为就要由实现定义,因为char的确切位数由实现定义。如果char只有8位,那么值1256就会被截断到232(C.6.2.1)。由实现定义的大部分特征都与用与运行程序的硬件特征有关。 在写程序的时候,通常都需要依赖与某些由实现定义的行为。这种行为是我们为了能在大范围的系统之上有效操作所必须付出的代价。例如,如果所有的char都是8位,而且所有整数都是32位,这个语言就会简单许多。但是,16位和32位的字符也很常见,整数也可能更大而无法放入到32位中。例如,今天的许多计算机都有着超过32G字节的磁盘,表示磁盘地址就需要32位或者64位的整数。

4.C99标准

ISO/IEC1989 或ISO/IEC9899:1999 里面的5.2.4.2.1节里面有说各种int类型的尺寸

Their implementation-defined values shall be equal or greater in magnitude (absolute value) to those shown, with the same sign. — minimum value for an object of type int INT_MIN -32767 // −(215 − 1) — maximum value for an object of type int INT_MAX +32767 // 215 − 1 — maximum value for an object of type unsigned int UINT_MAX 65535 // 216 − 1 — minimum value for an object of type long int LONG_MIN -2147483647 // −(231 − 1) — maximum value for an object of type long int LONG_MAX +2147483647 // 231 − 1 — maximum value for an object of type unsigned long int ULONG_MAX 4294967295 // 232 − 1

5.总结

标准值规定了:short >= 16 Bytes, long >= 32 Bytes, int >= short && int <= long

相关数据

2024最详细的AI框架对比指南—PyTorch与TensorFlow到底选谁?

2024最详细的AI框架对比指南—PyTorch与TensorFlow到底选谁?

为什么选择正确的框架如此重要?Pytorch Vs TensorFlow:AI、ML和DL框架不仅仅是工具;它们是决定我们如何创建、实施和部署智能系统的基础构建块

09-03 best365中国官网
‌全球铋资源告急:高能环境战略价值迎爆发式重估

‌全球铋资源告急:高能环境战略价值迎爆发式重估

一、铋资源危机:全球储量告急,开发周期不足10年 1. 资源高度集中,伴生矿供应链脆弱性凸显据国际矿产协会统计,全球铋矿探明储量仅24万

08-04 365bet现场走地盘
3.6亿年前的树种,在浙江温州“救活”了,它曾是恐龙的口粮

3.6亿年前的树种,在浙江温州“救活”了,它曾是恐龙的口粮

来源:潮新闻 笔筒树。 受访者供图 中生代侏罗纪时期的一个午后,一只恐龙正慢悠悠地咀嚼着身旁树上鲜嫩的蕨叶,汁液顺着它的齿缝直淌下

08-19 365bet赌城
老照片-1990意大利世界杯 西德队的阵容

老照片-1990意大利世界杯 西德队的阵容

1990年世界杯在意大利举行,最终由马特乌斯领衔的联邦德国队获得了该届世界杯冠军,这也是德国队历史上第三次捧起大力神杯。图为90年世界

07-14 365bet现场走地盘
《王者荣耀》夏洛特上线活动介绍

《王者荣耀》夏洛特上线活动介绍

《王者荣耀》的snk新英雄夏洛特在9月15日的正式服更新当中正式上架。这也是snk的第四位新英雄了。王者荣耀官方也为夏洛特的上线做出了一系

08-19 365bet现场走地盘
散户炒股赚钱的几种实际方法 我看过不少人炒股赚钱的例子,他们的方法虽然简单但都坚持执行。这说明找到适合自身条件的操作方式并严格执行,比追求复杂技巧更...

散户炒股赚钱的几种实际方法 我看过不少人炒股赚钱的例子,他们的方法虽然简单但都坚持执行。这说明找到适合自身条件的操作方式并严格执行,比追求复杂技巧更...

来源:雪球App,作者: 无所乐誉,(https://xueqiu.com/8727578648/339818520) 我看过不少人炒股赚钱的例子,他们的方法虽然简单但都坚持执行。这说

09-08 365bet赌城