getchar()不停止原因

Posted 杨铭宇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了getchar()不停止原因相关的知识,希望对你有一定的参考价值。

应该是你的输入流中还有残留的字符,getchar()()会接受那个字符。你可以在调用getchar()()之前用fflush(stdin)刷新一下输入缓冲区。
上面一段里面,应该有读入语句吧,没读干净,输入流里还有剩余的字符,就直接被getchar吞掉了,所以没有等待输入。

技术分享
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
    double f;
    f=(1.0/6)*pow(-1,6);
    cout<<f<<endl;
}
技术分享

 


技术分享
 1 #include<iostream>
 2 using namespace std;
 3 class A
 4 {
 5    public:
 6     virtual void test()
 7     {
 8         cout<<"1"<<endl;
 9     }
10 };
11 class B:public A
12 {
13 public:
14    void test()
15    {
16        cout<<"2"<<endl;
17    }
18 };
19 void F(A *pa,A &ra,A a)
20 {
21    pa->test();
22    ra.test();
23    a.test();
24 }
25 
26 int main()
27 {
28 B b;
29 F(&b,b,b);
30 return 0;
31 }
技术分享

 

 


以上是关于getchar()不停止原因的主要内容,如果未能解决你的问题,请参考以下文章

使用getchar()获取字符串

scanf()和getchar() 使用

c语言中gets ,getschar 和fgets 的用法及三者之间的差别

C语言getchar()和EOF

getchar用法

while((c=getchar())!='\n')