2.1 2.2
C++ guarantees short and int is at least 16 bits, long at least 32 bits, long long at least 64 bits.
The signed can represent positive numbers, negative numbers and zero, while unsigned can only represent numbers no less than zero.
The C and C++ standards do not specify the representation of float, double and long double. It is possible that all three implemented as IEEE double-precision.
use double, or also float.
2.3 2.4
大概说的就是强制类型转换吧,在表达式内如果有了无符号数,那么你就得保证关于它的结果也是非负的,这样的话,如果你给它一个负值,那么编译器会取模。
2.