【发布时间】:2012-09-18 05:00:56
【问题描述】:
空字符或空终止符 (\0) 用于终止连续的字符序列。我发现在 C 中,我可以将字符添加到随机位置的字符串中,并且字符串将从该点被切断。例如:
char * s = "Hello\0World";
将导致s 等于字符串"Hello"。然而,在 JavaScript 中,情况并非如此:
var s = "Hello\0World";
上述内容无法按预期工作。 s 将等于字符串 "HelloWorld"。
为什么这不起作用?
【问题讨论】:
-
我认为Javascript不是C。所以字符串中的空字节只是字符串中的空字节。
-
大多数语言都遵循 Pascal 的传统,将字符串表示为具有整数长度的数组(因此允许空字符)。从这个意义上说,C 实际上是奇怪的。
标签: javascript string terminator