반응형
// char -> wchar
wchar_t* CharToWChar(const char* pstrSrc)
{
ASSERT(pstrSrc);
int nLen = strlen(pstrSrc)+1;
wchar_t* pwstr = (LPWSTR) malloc ( sizeof( wchar_t )* nLen);
mbstowcs(pwstr, pstrSrc, nLen);
return pwstr;
}
// wchar -> char
char* WCharToChar(const wchar_t* pwstrSrc)
{
ASSERT(pwstrSrc);
#if !defined _DEBUG
int len = 0;
len = (wcslen(pwstrSrc) + 1)*2;
char* pstr = (char*) malloc ( sizeof( char) * len);
WideCharToMultiByte( 949, 0, pwstrSrc, -1, pstr, len, NULL, NULL);
#else
int nLen = wcslen(pwstrSrc);
char* pstr = (char*) malloc ( sizeof( char) * nLen + 1);
wcstombs(pstr, pwstrSrc, nLen+1);
#endif
return pstr;
}
char* WCharToChar(const wchar_t* pwstrSrc)
{
ASSERT(pwstrSrc);
#if !defined _DEBUG
int len = 0;
len = (wcslen(pwstrSrc) + 1)*2;
char* pstr = (char*) malloc ( sizeof( char) * len);
WideCharToMultiByte( 949, 0, pwstrSrc, -1, pstr, len, NULL, NULL);
#else
int nLen = wcslen(pwstrSrc);
char* pstr = (char*) malloc ( sizeof( char) * nLen + 1);
wcstombs(pstr, pwstrSrc, nLen+1);
#endif
return pstr;
}
반응형
'C & C++ > C & C++' 카테고리의 다른 글
전원관리 정보 얻어오기 (0) | 2012.08.13 |
---|---|
메모리 관련 정보 얻어오기 (0) | 2012.08.13 |
사용자 계정 폴더 가져오기 (0) | 2012.06.20 |
내문서 경로 가져오기 (0) | 2012.06.20 |
바탕화면 폴더 경로 가져오기 (0) | 2012.06.20 |
댓글