1,浮点类型
包括float、double和long double,分别称为单精度浮点数、双精度浮点数和扩展精度浮点数。
float只能保证6位有效数字;
double至少能保证10位有效数字。
2,字面值常量
字面值常量只能是内置类型,而不能是任何类类型,自然也就不能是任何标准库类型。
3,整型字面值
默认是int 或 long。int能放下就是int,int放不下了就是long。
加后缀L(l)强制转为long类型;
加后缀U(u)强制转为unsigned类型;
同时使用UL则成为unsigned long类型。
加前缀0(零)表示8进制;
加前缀0x(0X)表示16进制。
如: 1024UL 0x3CUL
4,浮点字面值
默认为double类型。
加后缀F(f)表示单精度 float
加后缀L(l)表示扩展精度 long double
注意:不能在一个整型字面值常量的后面加F/f,并期望它自动将整型值转为浮点值。这样做是直接报错的!比如:
float a = 30F;
cout << "a = " << a << endl;
编译直接报错:
error C3688: 文本后缀“F”无效;未找到文文本运算符或文本运算符模板“operator """"F”
改成30.0F就OK了。
5,转义字符
\n \t \r \b
通用转义字符:
八进制形式 : \ooo
十六进制形式: \xddd
最多3位数字
float只能保证6位有效数字;
double至少能保证10位有效数字。
2,字面值常量
字面值常量只能是内置类型,而不能是任何类类型,自然也就不能是任何标准库类型。
3,整型字面值
默认是int 或 long。int能放下就是int,int放不下了就是long。
加后缀L(l)强制转为long类型;
加后缀U(u)强制转为unsigned类型;
同时使用UL则成为unsigned long类型。
加前缀0(零)表示8进制;
加前缀0x(0X)表示16进制。
如: 1024UL 0x3CUL
4,浮点字面值
默认为double类型。
加后缀F(f)表示单精度 float
加后缀L(l)表示扩展精度 long double
注意:不能在一个整型字面值常量的后面加F/f,并期望它自动将整型值转为浮点值。这样做是直接报错的!比如:
float a = 30F;
cout << "a = " << a << endl;
编译直接报错:
error C3688: 文本后缀“F”无效;未找到文文本运算符或文本运算符模板“operator """"F”
改成30.0F就OK了。
5,转义字符
\n \t \r \b
通用转义字符:
八进制形式 : \ooo
十六进制形式: \xddd
最多3位数字