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