C/C++ - 基本数据类型(默认:32位操作系统)

简介: C/C++ - 基本数据类型(默认:32位操作系统)

short [int]

内存大小 2byte=16bit

数据范围 -32768~32767(即-2^15~2^15-1)


unsigned short [int]

内存大小 2byte=16bit

数据范围 0~65535(即0~2^16-1)  


int

内存大小 4byte=32bit

数据范围 -2147483648~2147483647(即-2^31~2^31-1)

备注 C语言规定:无论什么平台都要保证long型占用字节数不小于int型, int型不小于short型。


int型在不同位数操作系统中所占用的字节数不同,如果想编写可移植性好的程序,早年流行16位和32位操作系统时最好用long修饰int型,现在流行32位和64位操作系统,用int就挺多了。当然这些都看你怎么去理解它了,毕竟它 们在不同操作系统所占字节数不固定,所以各自都有其适用之处,不可定论其好坏。


unsigned int

内存大小 4byte=32bit

数据范围 0~4294967295(即0~2^32-1)  


long [int]

内存大小 4byte=32bit

数据范围 -2147483648~2147483647(即-2^31~2^31-1)

备注 short,int,long都默认为有符号型,其中 long 和 int 都占4个字节的空间大小,他们有什么区别呢?

16位操作系统:long:4字节,int:2字节

32位操作系统:long:4字节,int:4字节64位操作系统:long:8字节,int:4字节


unsigned long [int]

内存大小 4byte=32bit

数据范围 0~4294967295(即0~2^32-1)


long long [int]内存大小 8byte=64bit

数据范围 -9223372036854775808~9223372036854775807(即-2^64~2^64-1)


unsigned long long [int]内存大小 8byte=64bit

数据范围 0~18446744073709551615(即0~2^64-1)


unsigned char(byte)内存大小 1byte=8bit

数据范围 0~255(即0~2^8-1)


singned char

内存大小 1byte=8bit

数据范围 -128~127(即-2^7~2^7-1)


bool内存大小 1byte=8bit

数据范围 false or true(即0 or 1)

备注 只能取两个值false或者true;所以最小值就是:0, 最大值:1。


float内存大小 4byte=32bit

数据范围 (1.17549e-038)~(3.40282e+038)

备注 浮点数在内存中都是按科学计数法来存储的,浮点数的精度是由尾数的位数决定的,大家记住即可不必深究。


double内存大小 8byte=64bit

数据范围 (2.22507e-308)~(1.79769e+308)

备注 如何区分和使用这两个浮点类型呢,首先float和double的精度不同, float保留到小数点后面7位,而double保留到小数点后面16位,float能保证6 位有效数字,而double能保证15位有效数字,如果在不追求精度的的情况下 当然用 float比较好,节省内存,如果需要很高的精度的情况下,最好还是用 double,平时我们定义浮点型变量一般都用double,毕竟精度高,一般精度的损失是不能忽略的。


指针

内存大小 4byte=32bit    

备注 64位系统==8byte


1.// 16位编译器
char :1个字节
unsigned char :1个字节
char*(即指针变量): 2个字节
short int : 2个字节
int:  2个字节
unsigned int : 2个字节
float:  4个字节
double:   8个字节
long:   4个字节
long long:  8个字节
unsigned long:  4个字节
// 32位编译器
char :1个字节
unsigned char :1个字节
char*(即指针变量): 4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节。同理64位编译器)
short int : 2个字节
int:  4个字节
unsigned int : 4个字节
float:  4个字节
double:   8个字节
long:   4个字节
long long:  8个字节
unsigned long:  4个字节
// 64位编译器
char :1个字节
unsigned char :1个字节
char*(即指针变量): 8个字节
short int : 2个字节
int:  4个字节
unsigned int : 4个字节
float:  4个字节
double:   8个字节
long:   8个字节
long long:  8个字节
unsigned long:  8个字节
目录
相关文章
|
1月前
|
存储 安全 C++
C++ 用户输入与数据类型详解:建立基本计算器及变量类型
了解C++的用户输入和数据类型。使用`cin`从键盘读取数据,如在简单计算器示例中获取两个数字并求和。C++的数据类型包括:`int`(整数)、`float`(浮点数,约6-7位小数)、`double`(更精确的浮点数,约15位小数)、`bool`(布尔值,true或false)、`char`(单个字符)和`string`(文本字符串)。每种类型都有特定的存储大小和用途。在处理浮点数时,`double`通常更安全。字符串需要包含`<string>`库。更多内容可关注微信公众号`Let us Coding`获取。
62 0
|
1月前
|
存储 安全 编译器
C++系列二:数据类型
C++系列二:数据类型
|
30天前
|
存储 程序员 C++
C++数据类型
C++数据类型
26 2
|
19天前
|
Java API C++
Java JNI开发时常用数据类型与C++中数据类型转换
Java JNI开发时常用数据类型与C++中数据类型转换
29 0
|
8天前
|
存储 C++ 容器
C++一分钟之-变量与数据类型入门
【6月更文挑战第18天】**C++编程基础:变量与数据类型概览** 了解变量(存储数据的容器)和数据类型是编程入门的关键。声明变量如`int age = 25;`,注意初始化和类型匹配。基本数据类型包括整型(int等)、浮点型(float、double)、字符型(char)和布尔型(bool)。理解类型范围和精度,使用字面量后缀增强可读性。深入学习数组、指针、结构体和类,以及动态内存管理,避免数组越界和内存泄漏。不断实践以巩固理论知识。
19 1
|
9天前
|
数据安全/隐私保护 C++
C++ 中的类是一种用户定义的数据类型,用于表示具有相似特征和行为的对象的模板。
C++ 中的类是一种用户定义的数据类型,用于表示具有相似特征和行为的对象的模板。
|
1天前
|
C++
C++数据类型
C++数据类型
3 0
|
1月前
|
存储 安全 编译器
C++数据类型与变量:深入理解与应用
C++数据类型与变量:深入理解与应用
|
1月前
|
前端开发 Java 编译器
Object c/swift,java,c/c++在32位和64位各个平台上基本数据类型 所占有的字节数
Object c/swift,java,c/c++在32位和64位各个平台上基本数据类型 所占有的字节数
24 0
|
1月前
|
存储 编译器 C++
C++从入门到精通:1.1.2基础语法之数据类型
C++从入门到精通:1.1.2基础语法之数据类型