其实没有多底层的原因,就一个非常简单的理由:字符串可以包含任何字符。
如果不指定一个开始与结束符的话,那么一旦字符串开始,到文件结束就全都是这个字符串的一部分。代码也就没法写下去了。
甚至,事实上当年的 C 语言是把各个模块逐个拼接起来编译的,也就是说,没有引号作为字符串结束符,那么一旦你开始了一个字符串,后边的所有 C 程序就都变成了字符串。整个程序结束了。