std::string str1="いい";
std::string str2="الحانةالريفية";
WriteToLog(str1.size());
WriteToLog(str2.size());
我在日志文件中得到“2,13”,这是这些字符串中的确切字符数。但是日文和阿拉伯文字符如何适合一个字节。我希望 str.size() 应该返回字符串使用的字节数。
最佳答案
在我基于 UTF-8 的语言环境中,我分别得到 6 和 26 个字节。
您所使用的语言环境必须使用字符集的高 8 位部分来对这些非拉丁字符进行编码,每个字符使用一个字节。
如果您切换到 UTF-8 语言环境,您应该会得到与我一样的结果。
关于c++ - 我如何能够在 1 字节的普通字符串中存储日文字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34021656/