티스토리 뷰
목차
LPSTR, LPCSTR, LPTSTR, LPCTSTR , LPWSTR, LPCWSTR 설명
간단하게 MFC 문자열인 LPSTR, LPCSTR, LPTSTR, LPCTSTR , LPWSTR, LPCWSTR이 무엇인지 설명합니다. 먼저, 멀티바이트와 유니코드의 차이점 부터 간단히 살펴보죠.
Multibyte : char (영문자에 1byte, " "로 사용)
Unicode : w_char, wide char형으로 type casting (영문자에 2byte, L""로 사용)
그리고 LP와 C가 무엇인지도 살펴보죠.
LP : long pointer 16bit (Net에선 64bit pointer, VC++6.0에선 32bit pointer)
C : Constant (상수를 의미)
문자열은 String 자료형과 char의 모음으로 구분지을 수 있습니다.
[LPSTR, LPCSTR, LPTSTR, LPCTSTR , LPWSTR, LPCWSTR 설명]
String (STR) 자료형
LPSTR (유니코드 미지원, 1byte)
= long pointer string
= char*
LPCSTR (유니코드 미지원, 1byte)
= long pointer constant string
= const char*
LPCTSTR (유니코드 지원, 2byte)
= long pointer constant t_string
= const tchar*
Wide char (unicode, 2byte(char은 1byte))
LPWSTR
= long pointer wide string
= w_char * (MBCS, Unicode 모두에서 Unicode)
LPCWSTR
= long pointer constant wide string
= const w_char *
t_char
= 컴파일러는 MBCS환경이면 char형, unicode 환경이면 w_char형으로 type casting
LPSTR, LPCSTR, LPTSTR, LPCTSTR , LPWSTR, LPCWSTR 설명