gpt4 book ai didi

c++ - 今天使用二合字母和三合字母吗?

转载 作者:IT老高 更新时间:2023-10-28 12:29:57 24 4
gpt4 key购买 nike

鉴于曾经有使用 digraphs and trigraphs 的理由在 C 和 C++ 中,有人将它们放入今天编写的代码中吗?是否还有大量包含它们的遗留代码仍在维护中?

(注意:这里,“有向图”表示“有向图”。digraphtrigraph 都有多种含义,但这里的预期用途是像 ??=<: 代表 #[ 等字符)

最佳答案

我不确定,但您最有可能发现在 IBM 大型机环境中使用的二合字母和三合字母。 EBCDIC字符集不包含 C 所需的某些字符。

二合字母和三合字母的另一个理由,即用重音字母替换一些标点符号的 7 位 ASCII-ish 字符集,今天可能不太相关。

在这样的环境之外,我怀疑三元组更常被误用而不是故意使用,例如:

puts("What happened??!");

作为引用,1989 年 ANSI C 标准(本质上成为 1990 年 ISO C 标准)中引入了三元组。它们是:

??= #     ??) ]     ??! |
??( [ ??' ^ ??> }
??/ \ ??< { ??- ~

替换发生在源代码中的任何地方,包括注释和字符串文字。

Digraphs 是某些标记的替代拼写,不影响注释或文字:

<: [      :>   ]
<% { %> }
%: # %:%: ##

有向图是由 1990 年 ISO C 标准的 1995 年修正案引入的。

关于c++ - 今天使用二合字母和三合字母吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7451406/

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