c语言 转义字符中 出现\8,\97 ,\992代表什么 占几个字节 我知道\ddd和\xdd

如题所述

\8,表示八进制的8(换算为十进制就是8,十六进制的8)的ASCII码所对应的符号,即退格,也就是将当前位置移到前一列;

至于\97和\992,我认为是有问题的,因为转子字符只有八进制和十六进制的表示,八进制是直接带数字的,十六进制用x表示,所以\ddd中ddd表示的数字应该是八进制,也就不可能出现大于7的数字,\xdd表示的是十六进制,各位的数字是从0~F。

当然,如果只看字节的话,那\8,\97 ,\992都应该是只占一个字节的。

具体表示什么,建议写程序把\97 ,\992赋值给一个char型变量,然后再把他打出来,同时也把他的数值打印出来,看能否打印,一般应该是会有告警的或者压根编译不通过。

我这边给你试了下:

代码如下:

#include <stdio.h>

int main()

{

char temp1, temp2;

temp1 = \97;

temp2 = \992;

printf("temp1=%c,value=%d\n",temp1,temp1);

printf("temp2=%c,value=%d\n",temp2,temp2);

return 0;

}

编译不通过,如下图:

所以,你这个肯定是写错了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-09
\ddd表示八进制转义字符,\xdd表示十六进制转义字符,所以这三个不是转义字符,或者是错误的八进制转义字符

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网