a[0]输出97我知道,但是在软件当中运行,输出的a[1]为什么是7啊?
#include <stdio.h>
int main()
{
char a[2]={'a','\97'};
printf("%d,%c\n",a[0],a[1]);
return 0;
}
a[0]输出97我知道,但是在软件当中运行,输出的a[1]为什么是7啊?
#include <stdio.h>
int main()
{
char a[2]={'a','\97'};
printf("%d,%c\n",a[0],a[1]);
return 0;
}
\后面带数字的话只能是三位8进制或者3位16进制数,十六进制必须x开头,所以这个\97这是一个非法的字符,\9被认为是错误的输入,忽略掉了。