视觉工作室2008的奇怪行为与逃脱序列

时间:2015-02-26 14:33:55

标签: c visual-studio-2008 trigraphs

关于C编程语言,转义序列的描述不解析visual studio 2008中以下行的输出。

char * str = "??/abc";
printf( "%s", str );

仅打印" bc"。
检查str指向的内存,我们可以发现"??/a"正在"\a"

在Google上搜索,我们无法找到与被视为反斜杠的"??/"相关的任何内容。

1 个答案:

答案 0 :(得分:1)

为了扩展AProgrammer的评论,C为键盘缺少某些字符的人定义了一组三字母。这些以' ??开头,然后是另一个字符。尤其是' ?? /'是' \'。

的三字母

这个翻译很早就在编译过程中完成,所以编译器只看到' \ a'。

请参阅MSDN

相关问题