2009-01-27 41 views

回答

3

確定想象字符流。

突然發現一個報價。這是一個字符串文字的開始。 我們繼續閱讀,直到我們發現另一個報價。 現在可能發生兩件事情。我們要麼找到第二個報價,這意味着我們記下一個報價並繼續閱讀。或者我們找到另一個字符,這意味着該字符串結束,

這可以在一個簡單的狀態圖顯示:

  +--------+ --- " ---> +-------+ 
--- " ---> | String |   | Quote | --- any ---> end of string 
      +--------+ <--- " --- +-------+ 
      |  ^
      |  | 
      \- any -/ 
+0

我明白你的意思,但你可能想重新單詞,所以單引號並不意味着'代替單雙qoute。 – 2009-01-27 21:32:29

0

因爲報價逃脫本身。

9

@符號當然意味着它是一個未轉義的字符串文字。但是,「未轉義」並不完全適用,因爲您仍然需要某種方式來表示非轉義字符串中的雙引號。要做到這一點,您只需輸入兩個雙引號。否則將終止字符串 - 如果你願意,你必須以某種方式逃避它的字符串內報價

string s = "\"H\""; 
3

:您的字符串也可以寫成這樣。

MS決定使用2個引號字符序列逐字字符串中的引號字符。就那麼簡單。