char是C語言標準數據類型,字符型,至于由幾個字節組成通常由編譯器決定,一般一個字節。
Windows為了消除各編譯器的差別,重新定義了一些數據類型,你提到了另外幾個類型都是這樣。CHAR為
單字節字符。還有個WCHAR為Unicode字符,即不論中英文,每個字有兩個字節組成。如果當前編譯方式為
ANSI(默認)方式,TCHAR等價于CHAR,如果為Unicode方式,TCHAR等價于WCHAR。在當前版本LPCSTR和
LPSTR沒區別,即以零結尾的字符串指針,相當于CHAR *。 LPSTR、LPCSTR相當于char *,所以這種類型
變量的賦值等同于char *的賦值
下面給出兩個例子,一個是直接賦值,另一個是間接的。
Ex1: LPSTR lpstrMsg = "I'm tired.";
Ex2: char strMsg[]="I'm tired.";
LPSTR lpstrMsg = (LPSTR) strMsg