C++数据类型和类型转换

数据类型:

算术类型

类型 符号 位数(bit) 范围
短整型: short 8 -2^{15} ~ 2^{15}-1
整形: int 32 -2^{31} ~ 2^{31}-1
长整型: long
长整型: long long 64
单精度浮点型: float 6位有效数字
双精度浮点型: double 10位有效数字
扩展精度浮点型: long double 10位有效数字

注意事项doublefloat 精度高,在某些设备上计算更快,long double 提供的精度一般没必要,而且会导致很高的开销

类型 符号 位数(bit) 范围
布尔型: bool // 布尔值输出为0/1, false/true
字符型: char 8 // 字符型用单引号,双引号报错
宽字符: wchar_t 16
Unicode字符: char16_t 16
Unicode字符: char32_t 32
无符号算术类型: unsigned + 算术类型

例: unsigned int
对于char分为三类:unsigned char(0-255), signed char(-128–127), char

类型转换

数据类型转换:

  1. 将一种算术类型赋值给另一种算术类型

    bool b = 42;  // b为真,在int型中,bool为真表示为1,为假表示为0. 
    int i = b;    // i的值为1
    i = 3.14;     // 尽管将float赋值给需要int型的i
    double pi = i; // 将int型赋值给double型,则自动转为double,所以pi=3.0
    char c = 65;  // 将int型转换为对应的编码'A'
    
  2. 无符号 + 有符号 = 无符号。
    其中有符号的直接被当做无符号计算,切记不要混用

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章