2012-12-15 42 views
1

考慮以下這行文字:空格鍵是一個字符嗎?

第一行文字。

如果一個字符陣列string用於將第一TEN字符加載陣列中它會輸出爲:

First lin'\0' 

First包含5個字母,lin包含3個字母。另外兩個字符在哪裏使用?

\0認爲是兩個字符?

或者是被認爲是字符的單詞之間的空格,因此'\ 0`是一個字符?

+3

_space_是一個字符。空格鍵在你的鍵盤上,你用它來產生空格字符。 – Oded

+0

如果您需要幫助,請告訴我們您的代碼。 –

+0

'\ 0'是'null'值的_escape_序列,在C字符串中表示字符串的結尾。這是一種將'null'放入字符串並編碼爲單個字符的方法。 – Oded

回答

6

是的,空間是一個字符。在ASCII編碼中,它的代碼編號爲32.

3

'\0'null-terminator,它在所有實現中實際上都是零值。

'\0'被認爲是一個單獨的字符,因爲反斜線\裝置to escape a character'\0''0'因此都是單個字符,但意味着非常不同的東西。

請注意,空間由不同的ascii value表示。

+1

我認爲'\ 0'== 0在所有的實現中 –

+1

@DavidRF謝謝,我之前並不是100%肯定;更新! –

4

兩個單詞之間的空間具有ASCII代碼爲0x20(040 ,或32 );它佔用一個字節。

字符串末尾的空ASCII碼0x00(0和8進制)佔用另一個字節。

請注意,空格鍵只是鍵盤上的鍵,可在鍵入時生成空格字符。

相關問題