输入流 - C++中一行中的数据量过大,怎样完成输入
阿神
阿神 2017-04-17 15:39:19
0
2
661

以前只是利用cin读取简单的几个数据,现在要输入的数据在一行内,大概包含5000个四位数,利用下面的代码后发现输入到七八百个就无法继续输入了,这是cin的问题吗(只能在输入回车键后,才能将数据送入缓冲区)?应该怎么解决这种问题呢?试了cin.getline()cin.get()scanf都没能解决这个问题。

int size;
cin>>size;
double array[size];
for(int i=0;i<size;i++){
    cin>>array[i];
}

谢谢!

阿神
阿神

闭关修行中......

全員に返信(2)
Ty80

この場合、ファイルからデータを読み取ることを選択します

いいねを押す +0
伊谢尔伦

バッファがいっぱいになると、バッファがフラッシュされる前に改行文字を入力する必要はありません。これがうまくいかない場合、投稿者は考えを変えることができるでしょうか?まず read または getline (まだテストしていません) を使用して、string または char* のすべての入力を一度に読み取ります。次に、入力時に同じ区切り文字を使用する必要があります (スペースであると仮定して)。その後、For boost の分割し、空間に従って分割を入力し、結果のベクトルの要素を数値に変換すれば問題ありません

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!