C++語言之字面值常量練習

Exercise 
2.7:  
解釋下列字面值常量的不同之處。 
  (a) 'a',L 'a',"a",L"a" 
  (b) 10, 10u, 10L, 10uL, 012, 0xC 

  (c) 3.14, 3.14f, 3.14L 

答:(a)'a'爲char型;L‘a’爲wchat_t型(寬字符型);“a”爲string類型,包含a和\0兩個字符;L"a" 爲寬字符串類型,

(b)10:int型;10u:unsigned int型;10L:long int型;10uL:unsigned long int型;012:八進制int型;0xC:十六進制int型

(c)3.14:double型;3.14f:float型;3.14L:long double型;


Exercise 
2.8:  
確定下列字面值常量的類型: 
      (a) -10 (b) -10u (c) -10. (d) -10e-2

答:-10:int型;-10u:unsigned int型;-10.:unsigned double型; -10e-2:double型;


Exercise 
2.9:  
下列哪些(如果有)是非法的? 
      (a) "Who goes with F\145rgus?\012" 
      (b) 3.14e1L          (c) "two" L"some" 
      (d) 1024f            (e) 3.14UL 
      (f) "multiple line 
           comment"

答:(c)非法。因爲字符串字面值與寬字符串字面值的連接是未定義的。

d)非法。因爲整數1024 後面不能帶後綴f。

(e)非法。因爲浮點字面值不能帶後綴U。 

(f)非法。因爲分兩行書寫的字符串字面值必須在第一行的末尾加上反斜線。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章