C++Primer第五版 2.1.3节练习

来源:互联网 发布:java编译 找不到符号 编辑:程序博客网 时间:2024/06/16 06:19

练习2.5:指出下述字面值的数据类型并说明每一组内几种字面值的区别。

(a).‘a’,L’a’, “a”,L”a”

 (b).10 , 10u , 10L, 10uL, 012, 0xC

 (c).3.14 , 3.14f , 3.14L

 (d).10 , 10u, 10. ,10e-2

 

练习2.6:下面两组定义是否有区别,如果有,请叙述之?

Int month = 9, day = 7;

Int month = 09, day = 07;

 

练习 2.7:下面字面值表示何种含义?它们各自的数据类型是什么?

(a)       “Who goes with F\145rgus?\012”

(b)       3.14e1L (c)1024f (d)3.14L

练习 2.8:请利用转义序列编写一段程序,要求先输出2M,然后换到新一行,修改程序使其先输出2,然后输出制表符,再输出M,最后转到新一行。

 

2.5答(a): 字符a , 宽字符a, 字符串a相当于,两个字符a\0,宽字符串a

     (b): 10,无符号数10,长整形10,无符号长整型10,八进制还是10,16进制代表13

     (c):3.14,浮点数3.140000,长整型3.140000000

   (d):10,无符号数10,10.0?,0.1

 

2.6 有区别:第一行 9,7

           第二行是09错误的,八进制最大为7 ,就是7

2.7a. \145 ‘e’, \012 换行

 b.31.4,浮点数1024,长整型3.14

  

2.8见程序。

#include <iostream>int main(){std::cout << "2\115\012"<< std::endl; //输出2M 换行 std::cout << "2\t\115\12" << std::endl;//输出2 制表符 M换行 return 0; } 



0 0