2011-02-15 2 views
1

을 사용하여 wchar_t를 부호없는 short로 만들고 싶습니다. wchar_t는 쓸데없고 Android NDK 개발에서 지원되지 않는 것으로 알려져 있습니다. 이 경우 wchar_t가 부호없는 short로 정의되도록해야합니까?안드로이드 NDK

이것은 wchar_t를 참조하는 네이티브 라이브러리를 이식하는 데 많은 도움이되며 JNI가 유니 코드를 이해하는 데 더 적합 할 것으로 보입니다. GetStringUTFChars()는 const char *를 반환하고 GetStringChars()는 jchar이 부호없는 short (2 바이트)로 정의 된 const jchar *을 반환합니다. wchar_t를 부호없는 short로 정의하면 GetStringChars()와 호환되며 겉으로보기에 내 인생을 훨씬 쉽게 만듭니다.

가능합니까? 무엇이 필요할까요? 해킹이 필요하고 toolchain을 재구 축할 필요가 있다고 생각합니다.

답변

1

gcc는 -fshort-wchar 옵션을 알고 있습니다. 안드로이드의 컴파일러가이 옵션을 지원하는지 모르겠습니다.

네이티브 라이브러리가 C-RTL의 넓은 문자열 기능을 사용한다면 요점은 무엇입니까? 이 경우 이러한 구현을 직접 제공해야합니다.

+0

빠른 테스트를 통해 정상적으로 작동하는지 봅니다. 정말 고마워. – Bellinghammer

+3

@Bellinghammer 의견을 보내 주셔서 감사 드리며 어쩌면 결과를 언젠가 게시 할 수 있습니까? 혹시 언젠가이게 필요할지도 모르는가? 아니면 물론 다른 누군가 ... – sstn