C++_针对char 字符类型cout的三种输出情况(++ch 和 ch+1 和 ch++)难点加重点
1.++ch,代表字符+1输出,比如输入是a,那么输出是b
1 #include<iostream> 2 using namespace std; 3 int main() 4 { 5 char ch; 6 cout << "输入,我将重复\n"; 7 cin.get(ch); 8 while (ch != '.') //表示输入以点号结束 9 { 10 if (ch == '\n') //判断输入流中的字符是否为换行符 11 cout << ch; 12 else 13 cout << ++ch;//将ch往后加1输出字符 14 cin.get(ch); //将输入流中的字符赋给ch 15 } 16 cout <<endl<< "OK" << endl; 17 system("pause"); 18 return 0; 19 }
执行结果:
2.ch+1,代表字符+1后ASCII输出,比如输入是a(97),那么加1后输出是98
1 #include<iostream> 2 using namespace std; 3 int main() 4 { 5 char ch; 6 cout << "输入,我将重复\n"; 7 cin.get(ch); 8 while (ch != '.') //表示输入以点号结束 9 { 10 if (ch == '\n') //判断输入流中的字符是否为换行符 11 cout << ch; 12 else 13 cout << ch+1;//将ch往后加1输出字符对应的ASCII码 14 cin.get(ch); //将输入流中的字符赋给ch 15 } 16 cout <<endl<< "OK" << endl; 17 system("pause"); 18 return 0; 19 }
执行结果:
3.ch++,代表字符先输出,后加1,所以输入abc,输出还是abc
1 #include<iostream> 2 using namespace std; 3 int main() 4 { 5 char ch; 6 cout << "输入,我将重复\n"; 7 cin.get(ch); 8 while (ch != '.') //表示输入以点号结束 9 { 10 if (ch == '\n') //判断输入流中的字符是否为换行符 11 cout << ch; 12 else 13 cout << ch++;//将ch先输出,后加1。(如果加1前的ch为a,那么加1后的ch为b) 14 cin.get(ch); //将输入流中的字符赋给ch 15 } 16 cout <<endl<< "OK" << endl; 17 system("pause"); 18 return 0; 19 }
执行结果为:
4.ch++的作用:可以在后边继续去显示ch的这样,就可以正确显示加1后的ch了
1 #include<iostream> 2 using namespace std; 3 int main() 4 { 5 char ch; 6 cout << "输入,我将重复\n"; 7 cin.get(ch); 8 while (ch != '.') //表示输入以点号结束 9 { 10 if (ch == '\n') //判断输入流中的字符是否为换行符 11 cout << ch; 12 else 13 { 14 cout << "ch++先显示:" << ch++ << endl;//将ch先输出,后加1。(如果加1前的ch为a,那么加1后的ch为b) 15 cout << "ch++后加1:" << ch << endl; 16 } 17 18 cin.get(ch); //将输入流中的字符赋给ch 19 } 20 cout << "OK" << endl; 21 system("pause"); 22 return 0; 23 }
执行结果为: