c++定义了一套包括算数类型和空类型在内的基本数据类型。
算数类型包括有
bool 布尔类型
char 字符
wchar_t 宽字符
char16_t Unicode字符
char32_t Unicode字符
short 短整型
int 整型
long 长整型
long long 长整型
float 单精度浮点数
double 双精度浮点数
long double 扩展精度浮点数
除去布尔型和扩展的字符型之外,其他整型可以划分为带符号的和无符号的。带符号可以表示正数、负数或0,无符号的仅表示大于等于0的值。
类型int、short、long、long long都是带符号的,通过在类型名前添加unsigned就可以得到无符号类型。
字符型分为三种:char、signed char和unsigned char。char实际上会表现为上述两种形式中的一种,具体是哪种由编译期决定。
选择类型的一些经验:
1、当明确知晓数值不可能为负数时,选用无符号类型
2、当使用int执行整数运算,在实际应用中short常常显得太小,而long和int一般有一样的尺寸。如果你的数值超过了int范围,选用long long。
3、在算数运算中不要使用char或bool,只有在存放字符或布尔值时才是用。不要使用char类型,而是指定signed char或unsigned char
4、执行浮点数运算选用double,这是因为float通常精度不够。long double一般情况下是没有必要的。