关于getchar()

对于以下代码:
ch1=getchar();
ch2=getchar();

如果我从键盘输入一个字符,假如是'a'吧,然后按回车.
那么'a'成功赋给ch1.
但如果我又想从键盘输入另一个字符,假如是'b'吧(当然你也可以输入'a'),但此时对ch2的赋值是不成功的.理由是第一次输入时你按下的回车,编译系统会把回车看成是一个字符,自动把它赋到ch2中了!
如果你想不让刚才按下的回车自动赋到ch2中,你可以在上面两个语句之间插入语句getchar();
这个getchar()语句可以把那个回车给"吃掉".
 
  

用scanf() 输入时,最好加一个 \n, 这样下接 getchar(); 时不会犯错
scanf("%d...\n",&i,...);

ch = getchar();


语句:ch=getchar();的作用等同于:scanf("%c",&ch);
在输入时,空格,回车等都将作为字符读入,而且只能在用户敲入Enter键时,读入才开始执行.

你可能感兴趣的:(小知识(语法))