【发布时间】:2015-01-21 02:36:57
【问题描述】:
我很好奇 strlen 如何计算 C 中多个字节的 unicode 字符。
它是否计算每个字节或字符(因为它们可以由多个字节组成)直到第一个 '\0'?
【问题讨论】:
-
strlen 使用字节。并且某些 unicode 字符的第一个字节为 '0x00',因此 1) strlen 对于 unicode 字符串无用。 2) 有用于处理多字节字符的可用函数:您可能想要使用宽字符函数之一,例如在 string.h 和 wchar.h 或 mbstring.h 中定义的 _mbstrnlen() 或 wcsnlen