C/C++中int的取值范围
直接答案:
我们常常看到int取值范围为-32768~32767,实际上int的取值范围依赖于计算机系统,在16位机器中,int占16位,其中一位为符号位,所以取值范围为前面所说的-32768~32767.
而在32位和64位机器中,int占32位,取值范围为-2147483648~2147483647。
ISO/ANSI C规定,int类型的最小范围为-32768到32767。(兼容旧版的16位机设计的程序)
16位机和32位机指的是什么呢?是指操作系统/CPU一次可以处理的最大数据宽度;
其它int类型的情况:
size_t类型:一些C/C++标准在stddef.h中定义的,size_t 类型表示C中任何对象所能达到的最大长度,它是无符号整数。(详见:size_t 数据类型_febuary_的博客-CSDN博客_size_t)
short int类型可能占用比int类型更少的存储空间,C保证short类型至少16位长,用于只需小数值的场合以节省空间。
long int 类型(或简写为long类型)可能占用比int类型更多的存储空间,C保证long类型至少32位长,用于使用大数值的场合。(应该也是默认的int)
long long int 类型(或简写为long long类型)可能占用比long类型更多的存储空间,C保证long long类型至少64位长,用于使用更大数值的场合。
我们可以通过sizeof函数得到以字节为单位的大小(1byte=8bit),加以验证:
#include<stdio.h>
int main()
{ printf("int size: %lu byte\n",sizeof(int)); printf("short size: %lu byte\n",sizeof(short int)); printf("long size: %lu byte\n",sizeof(long int)); printf("long long size: %lu byte\n",sizeof(long long int)); return 0;
}
控制台输出:
参考链接:
https://blog.csdn.net/JamesLi6/article/details/79512770
C/C++中int的取值范围相关推荐
- Java|Java中int的取值范围是多少
Java 中 int 的取值范围是:-2^31 ~ 2^31-1 大致想一下,int 占 4字节,也就是 32 位,int 是有符号的,最高位为符号位.所以剩下31个位置. 那么我们大胆猜测一下,最大 ...
- Java中int的取值范围
先上代码,通过下面代码的执行结果观察 public class Test {public static void main(String[] args) {// 2的31次方int j = (int) ...
- java int值的范围_java中int的取值范围是多少
java中int的取值范围是多少 发布时间:2020-06-26 14:53:13 来源:亿速云 阅读:159 作者:Leah 今天就跟大家聊聊有关java中int的取值范围,可能很多人都不太了解,为 ...
- python中int数据范围_Python中int的取值范围是多少
Python中int的取值范围是多少 发布时间:2020-10-30 09:33:50 来源:亿速云 阅读:66 作者:小新 这篇文章将为大家详细讲解有关Python中int的取值范围是多少,小编觉得 ...
- java中int的取值范围是多少
最近在看算法书的时候发现一个非常有意思的现象,在java中输入: System.out.println(Math.abs(-2147483648)); 输出为:-2147483648 针对这个问题,我 ...
- Java中int的取值范围的原因
为什么Java中int型数据取值范围是[-231, 231-1] 为什么Java中int型数据取值范围是[-231,231-1],网上很多解释都存在问题. int是Java中的8种基本类型之一,一个i ...
- python中int的取值范围_int32的取值范围是多少?
int32的数值取值范围为"-2147483648"到"2147483647":而int64的数值取值范围为"-9223372036854775808 ...
- c语言中int的取值范围_c语言入门(1)
c语言入门 C语言一经出现就以其功能丰富.表达能力强.灵活方便.应用面广等特点迅速在全世界普及和推广.C语言不但执行效率高而且可移植性好,可以用来开发应用软件.驱动.操作系统等.C语言也是其它众多高级 ...
- python浮点数的范围和精度_python基础教程之C#教程之C#中float的取值范围和精度分析...
https://www.xin3721.com/eschool/pythonxin3721/ 本文实例分析了C#中float的取值范围和精度.分享给大家供大家参考.具体分析如下: float类型的表现 ...
最新文章
- mysql数据库64免安装_MYSQL数据库mysql 5.7.18 winx64 免安装 配置方法
- ORACLE强大的令人发指
- 【Linux】虚拟机 Ubuntu sudo指令实现Gparted安装和 dsv/sda1 内存扩展
- 学习《深度学习入门:基于Python的理论与实现》高清中文版PDF+源代码
- CV Code | 计算机视觉开源周报 20190701期
- GDI+中发生一般性错误的解决办法(转帖)
- opencv 编译安装时出现报错 modules/videoio/src/cap_ffmpeg_impl.hpp:585:34: error: ‘AVStream {aka struct AVStre
- java 栈泛型_使用泛型实现栈结构
- SzNOI语法百题之总目录
- JAVA-初步认识-第十章-多态-类型判断-instanceof
- radius peap mysql_基于Linux Ubuntu的RADIUS服务器搭建
- 机器学习中的数学——激活函数(六):Parametric ReLU(PReLU)函数
- 基于SSM超市订单管理系统(MYSQL版)
- 边缘计算相关论文汇总
- 阿里云 Aliplayer高级功能介绍(三):多字幕 1
- 酷柚易汛进销存-如何新增付款单?
- 曲面电视市场日渐成熟,TCL缘何“一骑绝尘”?
- 【pandas】统计指标
- JVM:常用的四种垃圾回收机制
- 一、个人总结的菜鸟教程|sql教程的知识点(SQL教程)