본문 바로가기

C & C++

ANSI vs UNICODE in CRT(C Run Time Library)

728x90
반응형
유니코드 버전의 프로그램을 개발하는 경우 _UNICODE 가 정의된다.
이 경우 char 대신에 wchar을 사용해야 한다.
CRT(C Run Time Library) 함수에는 _UNICODE가 정의된 경우와 그렇지 않은 경우에 사용하는 함수가 따로 존재한다.

ANSI 코드든 유니코드든 상관없이 코드를 수정하지 않으려면 Common 에 해당하는 함수를 사용하면 된다.
마치 char 이나 wchar 대신에 TCHAR을 사용하는 것처럼...

ANSI  --> UNICODE  --> Common

strcpy  -->  wcscpy  -->  _tcscpy
strncpy  -->  wcsncpy  --> _tcsncpy
strlen  -->  wcslen  -->  _tcslen
_splitpath  --> _wsplitpath  --> 
_tsplitpath
sprintf  -->  swprintf  -->  _stprintf
strcat  -->  wcscat  -->  _tcscat
_access  --> _waccess  -->  _taccess
strtok  -->  wcstok  --> _tcstok
strcmp  --> wcscmp  -->  _tcscmp
_stricmp  -->  _wcsicmp  -->  _tcsicmp
_snprintf  --> _snwprintf  -->  _sntprintf
atoi  -->  _wtoi  -->  _tstoi
strchr  -->  wcschr  -->  _tcschr
strstr --> wcsstr --> _tcsstr
반응형