내가 *는 char * wchar_t에 변환하기 위해 노력하고있어 wchar_t를의 * 중 * 숯불을 구성하는 데 필요한 내 메모리 낭비 솔루션은 문자는 단일 바이트 또는 다중 수 있습니다크기 C
char *wstrtostr(const wchar_t *text) {
size_t size = wcslen(text)*sizeof(wchar_t)+1;
char *sa = malloc(size);
wcstombs(sa,text,size);
return sa;
}
했다 -byte 및 wcslen은 문자와 동등한 크기에 상관없이 이들을 계산합니다.
문제는 우리가 우리의 문자 포인터를 구축하는 데 필요한 크기를 결정 결과적으로 이러한 특정 문제에 대한 wcslen 및 대안을 구축 할 수 있도록 우리가 WCHAR의 해당 문자의 크기를 결정하는 방법이다?
왜 'wcstombs' 매뉴얼을 읽지 않으십니까? –
[* Kerrek SB *의 주석]까지 추가 (http://stackoverflow.com/questions/41441050/size-needed-to-construct-a-char-out-of-wchar-t-in-c# comment70088254_41441050) : http://man7.org/linux/man-pages/man3/wcstombs.3.html – alk