在将我的 Visual C++ 项目移植到 GCC 时,我发现 wchar_t 数据类型默认为 4 字节 UTF-32。我可以使用编译器选项来覆盖它,但随后 RTL 的整个 wcs*(wcslen、wcscmp 等)部分将变得不可用,因为它假定为 4 字节宽的字符串。
现在,我已经从头开始重新实现了 5-6 个这些函数并#defined 我的实现。但是有没有更优雅的选择 - 比如说,一个 2 字节 wchar-t 的 GCC RTL 构建静静地坐在某个地方,等待被链接?
我所追求的 GCC 的特定风格是 Mac OS X 上的 Xcode、Cygwin 以及 Debian Linux Etch 附带的一种。