// ショーファイルの内容- sbumpc()の例 の#include <iostreamの> // はstd :: coutを、STD :: streambufを する#include <fstreamの> // はstd ::はifstream の#include <cstdioを> // EOF 使って 名前空間はstd; BOOL readWord(STD ::のIStream&に、STD :: ストリング・ワード){ int型C。 std ::ストリームバッファ&SB = * で.rdbuf(); word.clear(); 裁判所未満 << " --------------- 1 " 。 一方、((C = sb.sbumpc())!= EOF){ もし(C == ' ' || C == ' \ n ' || C == ' \ R ' || C == ' \ T ' || C == ' \ V ' || C == ' \ F ' || C == ' \ 0 ' ){ 場合(word.empty()){ もし、(C == ' \ n ' ){ COUT << " ------------- --2 " ; 単語 + = "END " ; 戻り 真; } 続ける; } そう{ もし、(C == ' \ n ' ) sb.sungetc(); // 次の位置に予め COUT << " ------------ --- 5 " ; 戻り 真; } } COUT << " --------------- 3 」を、 word.push_back(C); } //はeofbitをトリガー に。取得(); COUT << " --------------- 4 " << word.empty()。 返します!word.empty(); } int型のmain(){ のstd ::はifstreamフィン(" test.txtの" )。 std :: 文字列の単語。 一方、(readWord(フィン、単語)){ COUT <<ワード<< ENDL。 } 戻り 0 。 }
test.txtの
中国の万里の長城こんにちは空自 ASAA ASA AS ASA vdvsd sjklmnの sdfsdf
出力: