问一个字符char的问题
有一个程序,其中:char c4='\101',c5='\116';
cout<<c4<<' '<<c5;
这的'\101','\116'是代表什么?是ASCII码吗?但是ASCII码里面101和116是e和t,但输出的是A和N,怎么回事?
// Note:Your choice is C++ IDE #include <iostream> using namespace std; int main() { char c1 = 101, c2 = 116; //这里才是10进制,通过类型转换为char型,其表现形式为8位2进制数, char c4 = '\101', c5= '\116'; //转义字符,规定为8进制 //等价于 char c4 = 63, c5 = 78; //char char c4 = 'A'; // \101与A基本就是等价的而由65得出的A是类型转换得出的 cout<<c1<<' '<<c2<<endl; //e t cout<<c4<<' '<<c5<<endl; //A N cout<<(int)'A'<<endl; //输出65,默认输出为10进制处理 cout << showbase << oct <<(int)'A' << endl; //输出8进制表示的A数字值 cout << showbase << hex <<(int)'A'<< endl; //输出16进制表示的A数字值 return 0; } 转义字符 意义 ASCII码值(十进制) 8进制 \a 响铃(BEL) 007 \7 \b 退格(BS) 008 \10 \f 换页(FF) 012 \14 \n 换行(LF) 010 \12 \ddd 任意字符 三位八进制 \xhh 任意字符 二位十六进制