c++的getline一个关于缓冲区的一个小问题

来源:互联网 发布:淘宝国外直邮是真是假 编辑:程序博客网 时间:2024/05/18 03:44

c++的getline一个关于缓冲区的一个小问题


C++在使用getline的时候,总是有各种各样的未解之谜,很多都是由于缓冲区没有清除而造成的,所以我们只要及时的清空缓冲区就能符合预期的使用getline。方法就是使用fflush(stdin)这条语句。

getline的使用方法有很多,这里只举一个。


我们想要用getline来输入一个指定大小的字符串

#include <iostream>using namespace std;int main(){    int num;    cin >> num;    fflush(stdin);             //这一行代码最关键!!!!!!!!!!    char temp[num];    cin.getline(temp,num);    cout << temp;}

输出结果示例:

这里写图片描述


欢迎交流,欢迎评论。

原创粉丝点击