C++关键词(一)之基础类型
1 基础类型统计
| 关键字 | 
数据类型 | 
范围 | 
备注 | 
| bool | 
布尔值 | 
[true,false] | 
 | 
| char | 
有符号字符型 | 
[-128,127] | 
等价于signed char | 
| unsigned char | 
无符号字符型 | 
[0,255] | 
 | 
| short | 
有符号短整型 | 
[-32768,32767] | 
等价于signed short | 
| unsigned short | 
无符号的短整型 | 
[0,65535] | 
 | 
| int | 
有符号整型 | 
[-2147483648,2147483647] | 
等价于signed int | 
| unsigned int | 
无符号整型 | 
[0,4294967295] | 
 | 
| long | 
有符号长整型 | 
[-9223372036854775808,9223372036854775807] | 
 | 
| unsigned long | 
无符号长整型 | 
[0,18446744073709551615] | 
 | 
| long long | 
有符号超长整型 | 
[-9223372036854775808,9223372036854775807] | 
 | 
| unsigned long long | 
无符号超长整型 | 
[0,18446744073709551615] | 
 | 
| float | 
单精度浮点型 | 
[1.17549e-38,3.40282e+38] | 
 | 
| double | 
双精度浮点型 | 
[2.22507e-308,1.79769e+308] | 
 | 
| long double | 
长浮点型 | 
[3.3621e-4932,1.18973e+4932] | 
 | 
2.测试代码
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
  | 
#include  iostream>
#include  limits.h>
#include  limits>
int main(int argc,char * argv[])
{
    //limit.h
    std::cout << "--------------C Style---------------"  <<std::endl;
    std::cout << "bool           :["  "true,false]" << std::endl;
    std::cout << "signed char    :[" << SCHAR_MIN << "," << SCHAR_MAX  "]"  <<std::endl;
    std::cout << "unsigned char  :[" << CHAR_MIN << "," << UCHAR_MAX  "]" << std::endl;
    std::cout << "short          :[" << SHRT_MIN << ","  <<SHRT_MAX  "]" << std::endl;
    std::cout << "unsigned short :[" << 0 << "," << USHRT_MAX  "]" << std::endl;
    std::cout << "int            :[" << INT_MIN  <<"," << INT_MAX  "]" << std::endl;
    std::cout<<  "unsigned int   :["  0  "," << UINT_MAX  <<"]"  <<std::endl;
    std::cout << "long           :[" << LONG_MIN << "," << LONG_MAX << "]" << std::endl;
    std::cout << "unsigned long  :["  <<0  <<"," << ULONG_MAX << "]" << std::endl;
    std::cout  <<"long long      :[" << LONG_LONG_MIN  "," << LONG_LONG_MAX  <<"]"  <<std::endl;
    std::cout  <<"unsigned long long :[" << 0  <<","  <<ULONG_LONG_MAX  <<"]"<<  std::endl;
    std::cout  "--------------C++ Style---------------"  std::endl;
    std::cout  "char            :[" << int(std::numeric_limits char>::min()) << "," << int(std::numeric_limits <char>::max()) << "]" << std::endl;
    std::cout  "unsigned char   :[" <<int(std::numeric_limits unsigned char>::min())<<  ","<<  int(std::numeric_limits <unsigned char>::max())  <<"]" << std::endl;
    std::cout  "short           :[" << std::numeric_limits<short>::min() << "," << std::numeric_limits< short>::max() << "]"  <<std::endl;
    std::cout  "unsigned short  :[" << std::numeric_limits< unsigned short>::min() << "," << std::numeric_limits<unsigned short>::max()<<  "]" << std::endl;
    std::cout  "int             :[" << std::numeric_limits <int>::min()<<  "," << std::numeric_limits <int>::max() <<"]"<<  std::endl;
    std::cout  "unsigned int    :[" << std::numeric_limits< unsigned int>::min() << "," << std::numeric_limits< unsigned int>::max() << "]" << std::endl;
    std::cout  "long            :[" << std::numeric_limits< long>::min() << "," << std::numeric_limits <long>::max() << "]"<<  std::endl;
    std::cout  "unsigned long   :[" << std::numeric_limits< unsigned long>::min()<<  "," << std::numeric_limits <unsigned long>::max() << "]" << std::endl;
    std::cout  "long long       :[" << std::numeric_limits <long long>::min() << "," << std::numeric_limits <long long>::max() << "]" << std::endl;
    std::cout  "unsigned long long:["<<  std::numeric_limits< unsigned long long>::min() << "," << std::numeric_limits <unsigned long long>::max() << "]" << std::endl;
    std::cout  "float           :[" << std::numeric_limits <float>::min() << ","  <<std::numeric_limits< float>::max() << "]"<<  std::endl;
    std::cout  "double          :[" << std::numeric_limits <double>::min()<<  ","  <<std::numeric_limits< double>::max() << "]" << std::endl;
    std::cout  "long double     :[" << std::numeric_limits <long double>::min() << "," << std::numeric_limits <long double>::max() << "]" << std::endl;
    return 0;
}
  | 
 
3.程序输出
--------------C Style---------------     
bool           :[true,false]
signed char    :[-128,127]
unsigned char  :[0,255]
short          :[-32768,32767]
unsigned short :[0,65535]
int            :[-2147483648,2147483647]
unsigned int   :[0,4294967295]
long           :[-9223372036854775808,9223372036854775807]
unsigned long  :[0,18446744073709551615]
long long      :[-9223372036854775808,9223372036854775807]
unsigned long long :[0,18446744073709551615]
--------------C++ Style---------------
char            :[-128,127]
unsigned char   :[0,255]
short           :[-32768,32767]
unsigned short  :[0,65535]
int             :[-2147483648,2147483647]
unsigned int    :[0,4294967295]
long            :[-9223372036854775808,9223372036854775807]
unsigned long   :[0,18446744073709551615]
long long       :[-9223372036854775808,9223372036854775807]
unsigned long long:[0,18446744073709551615]
float           :[1.17549e-38,3.40282e+38]
double          :[2.22507e-308,1.79769e+308]
long double     :[3.3621e-4932,1.18973e+4932]