缓冲区的问题
int main()
{
cout << "接下来进行缓冲区的一个小实验 " << endl;
char a,b;
a = getchar();
cout << a ;
cout << endl;
b = getchar();
cout << b;
system("pause");
return 0;
}
如上面的代码,运行后如下
接下来进行缓冲区的一个小实验
a
a
请按任意键继续. . .
我知道输入a后按(换行),这两个缓冲区的字节第一个会被a读取,第二个是换行,会被b读取到,所以也就不用去再输入b的值,,,但是!但是!,我在输出a后,又插入了一个输出endl;的语句,这个语句不是可以刷新缓冲区吗?这个时候不是缓冲区刚才剩下的“换行”不也没了吗?为什么还会被b得到????