布尔类型(bool):取值为true/false 未定义其最小尺寸
字符型(char/wchar_t/char16_t/char32_t):
(1)基本的字符类型为char,char的最小尺寸为8位,一个char的大小应确保可以存放机器基本字符集中任意字符对应的数字(一个机器字节)。后三者则为Unicode字符集服务(Unicode用于表示所有自然语言中字符的标准)。
(2)根据带符号类型和无符号类型,char被分为了三种:char、signed char和unsigned char。尽管存在三种,但字符的表示形式却只有两种:带符号类型和无符号类型。类型char会表现为signed char和unsigned char中的一种(由编译器决定)。
整型数(short/ int / long / long long):
(1)short最小尺寸为16位,int最小尺寸为16位,long最小尺寸为32位,long long最小尺寸为64位
(2)一个int至少和一个short一样大,一个long至少和一个int一样大,一个long long至少和一个long一样大。
注:在使用int执行整数运算时,实际问题中,short往往太小,long 往往和 int 大小尺寸一样,故当超出了int的表示范围后,选用 long long
浮点型(float/ double / long double):
(1)通常,float以一个字(32位),double2个字(64位),long double以3-4个字来表示。
(2)float七个有效位,最多只能精确到小数点后六位。例如:3.1415926,3111.1415926,黑色的小数会因为精度问题略去,黄色的数值则会以随机值的形式存在。
double同理,16个有效位,最多只能精确到小数点后15位。
注:执行浮点数运算时,选用double。float的精度往往不够,而且double和float的计算代价往往相差无极,有时double还优于float