gpt4 book ai didi

string - 字符串转义码 (\n,\t...) 起源于何处?

转载 作者:行者123 更新时间:2023-12-02 00:43:44 26 4
gpt4 key购买 nike

纯粹是想知道...因为它们今天仍然存在并在 C# 中使用...

使用字符串转义码的模式从何而来?它最早出现在什么语言中?哪些语言(如果有的话)以不同的方式解决了这个问题?

最佳答案

我怀疑这些转义码源自 B,一种用于 Honeywell 6000 GCOS 操作系统的高级汇编编程语言。这种语言是在贝尔实验室基于一种叫做 BCPL 的英国语言开发的。由于 BCPL 相当冗长,B 开发人员简化了语法并添加了诸如大括号之类的内容来替换 BEGIN 和 END。这就是名称 B 的由来,因为它是 BCPL 的缩写形式。

后来贝尔实验室的一些人创建了一种语言,它是 B 的继承者,主要是通过添加类型和标准 I/O 库。因为它是 B 的继任者,所以他们选择了名称 BCPL 中的下一个字母。

我不记得在 B 之前看到过反斜杠表示法,并且由于 C 和 UNIX 从 B 继承了它,所以我认为 B 是这种表示法的起源,或者更具体地说,贝尔实验室是起源。这种表示法完全有可能在 B 之前的其他贝尔实验室软件中使用,因为他们是多产的软件生产商,其中大部分免费分发给大学,例如我在 1970 年代中期就读的大学。

顺便一提,转义序列的概念早在 19 世纪就已存在,可追溯到 19 世纪的 Baudot 码,这是一种固定长度的 5 位二进制码,旨在取代可变长度的摩尔斯电码。 Baudot 有 SI(移入)和 SO(移出)代码,可以将字母转义为大写变体,就像打字机上的 Shift 键一样。

关于string - 字符串转义码 (\n,\t...) 起源于何处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1675643/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com