整型
C++标准
- short:>= 2字节
- int:>= short
- long:>= 4字节,>= int
- long long:>=8字节,>= long
linux系统
- short:2字节
- int:4字节
- long:4字节
- long long:8字节
int被设置为计算机处理时效率最高的长度,即系统的位数。
常量
后缀:l或L表示将long常量,u或U表示unsigned int常量。U、L可以任意组合。
进制:十进制,按照int、long、long long的顺序;十六进制或八进制,按照int、unsigned int、long、unsigned long、long long、unsigned long long的顺序。这是因为十六进制常表示地址,无符号。
浮点型
C++标准
- float:>= 4字节
- double:>= 6字节,>= float
- long double:>= double
linux系统
- float:4字节
- double:8字节
- long double:12字节
常量
默认为double常量。
后缀:l或L表示long double常量,f或F表示float常量。
类型转换
初始化和赋值
浮点型赋整型:若浮点数较小,则丢弃小数部分;若浮点数较大,不同系统的结果是不同的,C++并没有定义。
表达式
整型提升:在计算表达式时,C++将bool、char、unsigned char、signed char、short值转换为int。将unsigned short根据系统转换为unsigned int(int和short等长)或int(short小于int)。
转换顺序:浮点型 > 整型
强制转换
(typeName) value;
typeName (value);
第一种格式来自C,第二种格式是纯粹的C++。新格式的想法是,要让强制类型转换就像是函数调用,这样对内置类型的强制转换就像是为用户定义的类设计的类型转换。
标签:short,字节,int,数据类型,unsigned,long,C++ From: https://www.cnblogs.com/jpdeng/p/16608384.html