c++ primer char与wchar_t
1.c++标准中:char是单字符,每个char类型占一个字节(8位)。
wchar_t是宽字符,每个wchar_t类型占2个字节(16位)。
字符转换实例(略)
char与 signed char unsigned char:
char等价于 signed char和 unsigned char是更据编译器而定的。
实例:
int main ()
{
char a = -1;
signed char b = -1;
unsigned char c = -1;
printf("a = %d, b = %d, c = %d", a, b, c);
}
2.1 整数字面值规定
c++ 中吧负值赋给 unsigned 对象是完全合法的,结果是该类型的取值个数求摸后的值。
定义字面值整数常量可以使用3中方式的一种:十进制,八进制(以0开头),十六进制(以0X开头)。
通过加后缀能够将字面值整数常量转移成相应类型的值 例如: 128u(unsigned int) 1023UL(unsigned long)
没有short类型的字面值常量。
2.2 浮点字面值规定
默认的字面值常量为double类型
2.3 bool字面值和字符字面值
'a'表示字面值char类型的
L 'a'表示 wchar_t类型的宽字面值
2.4 字符串字面值
'a'表示单个字符 a
"a"表示字符a和空字符
2.5 字符串字面值的连接
两个相邻的仅由空格,制表符或者换行符分开的字符串字面值。
如果连接字符串字面值和宽字符串字面值,将会出现结果未定义。
2.6 多行字面值
通过在一行的末尾加反斜杆(\)来处理。
建议:不用使用未定义的类型
3.1 初始化
直接初始化 int a(10);
复制初始化 int a = 10;
初始化并不是做赋值操作:
初始化:指创建变量并给它赋初始值。
赋值:则是擦除对象的当前值并用新值代替。
浙公网安备 33010602011771号