【发布时间】:2010-12-02 18:24:23
【问题描述】:
出于学习目的,我喜欢“重新发明轮子”,因此我正在开发一个用于字符串的容器类。使用NULL 字符作为数组终止符(即数组中的最后一个值将是NULL)会干扰以空值结尾的字符串吗?
我认为只有添加空字符串才会有问题,但我可能会遗漏一些东西。
编辑:这是用 C++ 编写的。
【问题讨论】:
-
“干扰”是什么意思。您可以发布任何代码来显示您所描述的内容吗?
-
这是 C 还是 C++?您存储的字符串是什么类型的?
-
@Sht C++。对不起,我没有说清楚。 @SpeksETC 我的意思是,由于字符串是空终止的(我认为?),一个空字符串将具有与“数组结尾”值相同的值。
-
您不能在字符串中嵌入空值,这对于非 ASCII 字符集和使用字符串处理二进制协议等很有用。
-
你说的是双NULL终止的字符串吗?哪里有一组以 NULL 结尾的字符串,所有字符串都与 NULL 字符分隔符连接,最后还有一个额外的 NULL 来终止整个数组?你想看看这个:blogs.msdn.com/b/oldnewthing/archive/2009/10/08/9904646.aspx
标签: c++ arrays string null containers