컴퓨터/c자료

LPCTSTR, LPTSTR 의 차이점

리베리온 2013. 12. 29. 23:45

L : long..
P : pointer
C : constant
T : TCHAR
STR : String...

이런 의미입니다.

- Long이라는 것은 예전 16비트때 썼던 short 포인터 때문에 붙이는 것인데..
win32 환경에서는 별다른 의미가 없습니다.


- Constant라는 것은 해당 포인터를 수정할 수 없다는 것이겠고요.


- TCHAR는 generic char type으로 컴파일 타임에 유니코드나 mbcs, ansi 코드로 변경됩니다.
즉, TCHAR는 _UNICODE 디파인된 상태에서는 WCHAR로, 그렇지 않은 경우 char로 컴파일 됩니다.


즉, LPCTSTR은 변경불가한 generic한 문자열이라는 의미이지요.

 

저 같은 경우는 습관적으로 LPCTSTR과 LPTSTR을 사용합니다.