我\a
在ISO / IEC 9899:2018(C18)第5.2.2 / 2节“字符显示语义”中偶然发现了转义序列:
\ a(警报)在不更改活动位置的情况下发出声音或可见警报。
我从未见过在任何C代码中使用此代码来指示错误。顺便说一句,我不知道在某些系统上转义序列可以/可以触发声音信号。
\a
转义序列的特定用途是什么?非常感谢你。
- \\转义序列的特定用途是什么?
根据您所阅读的标准的同一部分,
代表执行字符集中非图形字符的字母转义序列旨在在显示设备上产生如下操作
\a
序列要产生的特定动作是您引用的内容。实际上,这在现代代码中很少(如果有的话)使用,典型的C实现只是将序列映射到具有相同重要性的单个ASCII字符,依靠终端驱动程序来处理实际的警报。如果您不小心将二进制文件输出到终端,则比起其他任何方式,您更有可能看到效果。
- 是C早期的遗迹,现在已经过时了吗?
我不知道它用于我所见过的任何代码中所述的目的。从这个意义上讲,是的,这已经过时了,但是从标准的角度来看,该规定并不是过时的。
- 在哪种情况下(如果今天过时了)使用它会受到赞赏?你能举个例子吗?
您将在打印到的字符串中包含该序列stdout
。打印字符串时,您(也许)会听到铃声和/或屏幕闪烁和/或类似现象。
printf("Ring the bell...\a\n");
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句