标签:
2.1、int 、long和short类型之间有什么差别?
答:它们的最小存储空间不同,分别为16位、32位和16位。一般而言,short类型为半个机器字(word)长,int类型为一个机器字长,而long类型为一个或两个机器字长。因此,它们的表示范围不同。
2.2、unsigned 和signed类型有什么差别?
答:前者为无符号类型,只能表示大于或等于0的数。后者为带符号类型,可以表示正数、负数和0。
2.3、如果在某机器上short类型占16位,那么可以赋给short类型的最大数是什么?unsigned short类型的最大数又是什么?
答:若在某机器上short类型占16位,那么可以赋值给short类型的最大数是2^15 - 1,即32767;而unsigned short类型的最大数为2^16 - 1,即65535.
2.4、当给16位的unsigned short 对象赋值100000时,赋的值是什么?
答:100000超过了16位的unsigned short类型表示的范围,编译器对其二进制表示截取低16位,相当于对65536求余,得34464.
2.5、float和double类型有什么差别?
答:二者的存储位数不同(一般而言,float类型为32个二进制位,double类型为64个二进制位),因而取值范围不同,精度也不同(float类型只能保证6位有效数字,而double类型至少能保证10位有效数字)。
2.6、要计算抵押贷款的偿还金额,利率、本金和付款额应分别选用哪种类型?解释你选择的理由。
答:利率可以选择float类型,因为利率通常为百分之几。一般只保留到小数点后两位,所以6位有效数字就足以表示了。
本金可以选择long类型,因为本金通常为整数。long类型可表示的最大整数一般为2^31-1,应该足以表示了。
付款额一般为实数,可以选择double类型,因为float类型的6位有效数字可能不足以表示。
2.7、解释下列字面值常量的不同之处。
(a)‘a‘,L‘a‘,"a",L"a":‘a‘位char型字面值,L‘a‘为wchar_t型字面值,"a"位字符串字面值,L"a"位宽字符串字面值。
(b)
略。
标签:
原文地址:http://www.cnblogs.com/gongyan/p/4337043.html