어떻게 ANSI 문자 (char)에서 유니 코드 문자 (wchar_t)로 변환 할 수 있습니까?어떻게 ANSI 문자 (char)에서 유니 코드 문자 (wchar_t)로 변환 할 수 있습니까?
이 목적을위한 플랫폼 간 소스 코드가 있습니까?
어떻게 ANSI 문자 (char)에서 유니 코드 문자 (wchar_t)로 변환 할 수 있습니까?어떻게 ANSI 문자 (char)에서 유니 코드 문자 (wchar_t)로 변환 할 수 있습니까?
이 목적을위한 플랫폼 간 소스 코드가 있습니까?
예, <cstdlib>
에는 mbstowcs()
과 wcstombs()
이 있습니다.
나는 이것을 사용하는 방법에 대해 이전에 some code이라고 게시했습니다. 아마도 도움이 될 것입니다. 함수를 두 번 실행했는지 확인하십시오. 길이를 얻으려면 한 번, 실제 변환을 수행하려면 한 번 수행하십시오. (여기에 함수가 의미하는 것의 약간 discussion이 있습니다.) 수동 문자 배열 대신에 std::vector<char>
또는 std::vector<wchar_t>
을 선호합니다.
wchar_t
은 유니 코드와 아무 관련이 없습니다. 유니 코드가 필요한 경우 별도의 라이브러리 (예 : iconv()
)를 사용하여 wchar_t
에서 유니 코드로 변환해야하며 유니 코드 코드 포인트의 데이터 형식으로 wchar_t
을 사용하지 않아야합니다. 대신 기존 시스템에서는 uint32_t
을 사용하고 최신 시스템에서는 char32_t
을 사용하십시오.
은 분명히이 항상 작동하는지 모르겠어요, 작동 또는 그것은 우연의 일치,하지만 난 그것을 보여주는 가치라고 생각하는 경우 :
hey yo
감사를
인쇄, 그러나이를 함수는 문자열 변환 용입니다. –
단일 문자에 해당하는'mbtowc()'와'wctomb()가 있습니다. –
@Amir 당신은 한 문자 길이의 문자열을 한 문자 길이의 다른 문자열로 변환하고 문자를 추출하기 위해 그것들을 사용할 수 있습니다. –