1

char16_t 类型是否有与 strstr 和 sprintf 等效的函数?

另外,我在哪里可以找到 char16_t 的剩余功能?

4

1 回答 1

3

我不认为有这样的功能。

如果sizeof(char16_t) == sizeof(wchar_t)您可以使用宽字符串函数,例如wsprintf

警告:sizeof(wchar_t) == sizeof(int32_t)在 Linux 上!

你总是可以使用(在 C++11 中)std::u16string

也许您可能会考虑使用 Qt5 QChar(几乎像char16_tUTF16 中的 a )和QString。您只需要为此链接QtCore。然后QString::arg与可以提供的相似(但不等同)sprintf

正如我评论的那样,浮点到字符串的转换很棘手。也许来自MUSL libc(自由软件,MIT 许可证)的一些代码可以启发你,你可能会借用其中的一些。

于 2013-05-23T05:37:54.387 回答