我正在解析一个 XML 文件,它可以包含不同语言的本地化字符串(目前它只是英语和西班牙语,但将来它可能是任何语言),XML 解析器的 API 通过返回 XML 中的所有数据char* 是 UTF8 编码的。
解析后需要对数据进行一些操作(在其中搜索子字符串、连接字符串、确定子字符串的长度等)。
使用 strlen、strcat 等标准函数会很方便。由于我从 XML 解析器接收的原始数据是 char*,因此我可以使用这些标准字符串处理函数轻松完成所有操作。
然而,这些当然都假设和要求字符串是 NULL 终止的。因此,我的问题是 - 如果您有表示为 char* 的宽数据,NULL 终止符是否会出现在数据中而不是末尾?
即,如果某种语言中的字符不需要 2 个字节来表示它,并且它用一个字节表示,那么另一个字节是否会/可以为 NULL?