2.1
2.1.1 节练习
练习 2.1
类型 | 最小尺寸(bits) |
---|---|
short | 16 |
int | 16 |
long | 32 |
long long | 64 |
以 8 bits 的 signed char 和 unsigned char 为例:
unsigned char 取值为 0 - 255
signed char 取值为 -128 - 127
float 和 double 的区别:
float - 6位有效数字
double - 10位有效数字
练习 2.2
利率:double,多为浮点数
本金:int
付款:double
2.1.2 节练习
练习 2.3
#include <iostream>
int main(){
unsigned u = 10, u2 = 42;
std::cout << u2 - u << std::endl; // 32
std::cout << u - u2 << std::endl; // 4294967264
int i = 10, i2 = 42;
std::cout << i2 - i << std::endl; // 32
std::cout << i - i2 << std::endl; // -32
std::cout << i - u << std::endl; // 0
std::cout << u - i << std::endl; // 0
return 0;
}
2.1.3 节练习
这几题太扯淡了。。要是后面发现有实用价值再回来写。
2.2
2.2.1 节练习
练习 2.9
(a)错。 >> 后面不能接 int
(b)错。转换未执行,有丢失信息的危险
(c)错。不能连等
(d)对。小数部分丢失
练习 2.10
global_str:空串
global_int:0
local_str:空串
local_int:未定义
2.2.2 节练习
练习 2.11
a 定义
b 定义
c 声明
2.2.3 节练习
练习 2.12
a 非法
b 合法
c 非法
d 非法
e 合法
2.2.4 节练习
练习 2.13
j = 100
练习 2.14
100 45
2.3
2.3.1 节练习
练习 2.15
a:合法
b:不合法,必须是一个对象
c:合法
d:不合法,必须初始化
练习 2.16
a:合法,d 被赋值为 3.14159
b:合法,d 被赋值为 0
c:合法
d:合法
练习 2.17
“10 10”
2.3.2 节练习
#include <iostream></