#mfc #string
LPSTR = long pointer string = char *
LPCSTR = long pointer constant string = const char *
LPCTSTR = long pointer constant t_string = const tchar *
LPWSTR = long pointer wide string = w_char *
LPCWSTR = long pointer constant wide string = const w_char *
LPCTSTR = long pointer constant t_string = const tchar *
(LPSTR)(LPCTSTR)
(LPSTR)(LPCTSTR)myString
그냥 (LPSTR)CString을 하면 CString형 자료의 맨 처음 주소부터 char* 형으로 반환된다.
그러나 CString형은 앞의 16byte를 자료형을 표현하기 위해 사용하기 때문에, 여기서부터 형변환을 해주면 엉뚱한 값이 표현되게 된다.
따라서 MFC에서 지원하는 CString class는 LPCTSTR라는 함수를 통해서 일단 안전하게 const char * 형으로 바뀐 자료형을 얻어오게 한다. 그리고 한번 더 LPSTR을 해주어 type casting을 한다.