字符输出问题
char ch;
cout << "Type, and I shall repear.\n";
cin.get(ch);
while (ch != '.')
{
if (ch == '\n')
cout << ch;
else
cout << ++ch;
cin.get(ch);
}
此时,程序的输出是字符。当将程序中的代码改为cout<<ch+1;则输出的是该字符的ASCII码。
原因:
1.输出字符:对于变量经过自增运算符(++),输出变量仍然是char类型,因此输出的是字符。
2.输出ASCII码:ch+1编译器会将char类型转换为int类型进行运算。其结果是int类型,因此输出的是ASCII码。
网友评论