#include<stdio.h>
void main()
{
char a='\78';
printf("%c\n",a);
}
这里\0表示空,\7表示震铃,如果你像如下那样写,打开电脑声音,并且输出,会听到铃声和屏幕上输出8
我猜测,'\7'变成转义字符了,没有实际意义;然后将字符8存储入字符变量a里。还有纠正一下你的错误,char类型只能存储单个字符,不能存储多个字符,如果你想存储多个字符,可以使用字符数组char[]或者字符串类型string。
\是个转义符,\7是代表了一个特殊的含义“响铃”,在ASCII表的第7个位置。如果你想要实现输出\78的话就得在前面再加一个\,\\才会被转义成单个的\输出。即char a="\\78";
因为char是一个字节,你括号里面两个字节,所以输出前面的字节ascii
\的后面一位被拿走作为 \含义 的标注,只不过\7没有实际含义。参考print \n和\\n
char只占一个字节的空间,地址的内容被后面的覆盖了,先是/ 再变为7 在变为8
78不是一个正确的 8进制数,所以可能导致错误吧~
c 是ascII 码,请输入ascII 或者 字符