2011-09-15 75 views
0

我聽說這兩種類型(char和CHAR)在MSVC中不同,它們之間有什麼區別?如果他們不同,推薦使用哪一個?MSVC中char和CHAR有什麼區別?

+0

我真的很生氣,想讓代碼正常工作時使用CHAR。通常我使用char,但是,因爲我經常不那麼生氣,所以我打開CAPS LOCK。 – tvanfosson

回答

3

沒有實際的區別。 CHAR是一個類型定義到char,它的一部分Windows API在技術上不是MSVC。見Windows Datatypes at MSDN

所有(絕大多數)Windows API函數都使用在Win32 API頭文件中定義的參數類型,而不是直接C類型。我一直認爲這是爲了能夠支持多個編譯器(MSVC並不總是Windows的主要C編譯器)

+0

你的意思是'CHAR'是否意圖支持多個編譯器?但是其他編譯器可能沒有在typedef中將'CHAR'定義爲'char',那麼它怎麼做呢? – Thomson

+0

CHAR是在Windows API頭文件中進行typedef'd,而不是在編譯器中。 CHAR被定義爲WinNT.h,正如我的問題鏈接中所列出的那樣。 – shf301

相關問題