任何人都可以在 C 中“声明”自己的运算符……也就是说,如果一个人是 C 编译器大师并且拥有 C 编译器的源代码!;-)
进一步的难题:
- 这些操作在 C99 中是如何完成的?海合会?...
- 为什么 /\ & \/ 被丢弃了?
- /\ 和 \/ 运算符对哪些类型有效?
谷歌搜索“/\ \/”自然不会返回任何内容。维基百科的页面既不是 /\ 也不是 \/。但我发现 XML 字符实体中内置了类似的运算符!
来源补充:我在 PDP 的 cc 源文件“c00.c”中找到了有问题的示例:
/*
* Return the next symbol from the input.
* peeksym is a pushed-back symbol, peekc is a pushed-back
* character (after peeksym).
* mosflg means that the next symbol, if an identifier,
* is a member of structure or a structure tag or an enum tag
*/
symbol()
{
...
case BSLASH:
if (subseq('/', 0, 1))
return(MAX);
goto unkn;
case DIVIDE:
if (subseq('\\', 0, 1))
return(MIN);
if (subseq('*',1,0))
return(DIVIDE);
...
}
实际实现: /\ 和 \/ 运算符可以追溯到 1975 年的第六版 Unix(到目前为止)。示例:Unix V6 (1975)、Unix V7 (1979) 和更多当前的BSD 2.11 ( 1992-2008 )