gpt4 book ai didi

c - linux/windows 上的宽字符字符串函数

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:29:20 25 4
gpt4 key购买 nike

我想创建一个字符串库,其中包含两个不同的字符串类,用于处理 UTF-8 和 UCS-2(我认为这是某种 UTF-16,不处理 0xFFFF 以上的代理项和字符)。

在 Windows 平台上,宽字符是 2 个八位字节宽。在 Linux 上它们是 4 个。那么与宽字符字符串相关的函数会发生什么?您是否在 windows 上传递 2 个八位字节宽项目的缓冲区,在 linux 上传递 4 个八位字节宽项目的缓冲区?如果是,那么它使这些功能在 windows 和 linux 上完全不同,这并不能使它们真正成为“标准”...

当尝试创建一个应该以与跨平台代码相同的方式操作宽字符的库时,如何处理这个问题?谢谢。

最佳答案

关于 Windows 和 Linux 上 wchar_t 的不同大小,您是对的。这也意味着您对宽字符处理功能不太有用的看法是正确的。您可能应该检查一个编码转换库,例如 libiconv .然后您可以在内部使用 UTF-8 并仅在 I/O 上进行转换。

关于c - linux/windows 上的宽字符字符串函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29970820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com