void main(void)
{
if( getch() != \'\\x1a\' )
printf(\"hi\\n\") ;
}
請問 \\x1a 是什麼意思 ?
這是 ASCII 碼嗎 ?
查什麼書會有此相關資訊 ?
謝謝
2006-07-18 19:58:23 · 2 個解答 · 發問者 ? 4 in 電腦與網際網路 ➔ 程式設計
\x 是 16 進位表示法,表示後面的數是 16 進位。
\x1a 是 1* 16 + 10 = 26 ,是 26 的 16 進位表示值。
在 getch() 中,拿到的是字,所以,它代表字碼。
〝最常用的〞是 ASCII
MS-DOS 系列(含 Windows)的作業系統所使用的標準〝文字〞檔案結束表示法,要在最後放一個字:\x1a。(Ctrl-Z)
所以,那是模擬上述架構下的 End of File (EOF) 規定,來做輸入結束的判斷。
它〝可能〞在非 MS-DOS 系的作業系統下,用 〝命令 << text_file〞來當輸入 會不會結束(這句話我沒把它詳細定義好,簡單來說是這樣,請高手不要挑小細節。)!!
所以,在可能的情況下,判斷檔案結束,建議使用 EOF ,不要用 \x1a 。
看你問的問題,你應該是初學者。
我寫的可能深了一點。
你只要先知道 \x1a 是 26 的 16 進位表示法,
和怎麼找到你要的答案(如 知識+ 或 樓上所說的地方)就好了。
加油! ^_^
2006-07-18 22:02:22 · answer #1 · answered by ? 7 · 0⤊ 0⤋
http://www.microsoft.com/taiwan/msdn/
你可以在 MSDN 查到你不懂的東西 !
2006-07-18 20:19:06 · answer #2 · answered by leochen 2 · 0⤊ 0⤋