-1

だから私が readfile("animal.txt") をしたとき、それは私に与えました

zebra
baboon
orangutan
gorilla
aardvark
lion
tiger
cougar
ocelot
panther
rat
mouse
gerbil
hamster
elephant
rhinoceros
hippopotamus

ist >> s区切り文字を識別し、長い文字列を個々の単語に分割する方法を知りたいです。以下にtxtと私の実装を提供しました。

animal.txt


zebrababoonorangutangorillaaardvarkliontigercougarocelotpantherratmousegerbilhamsterelephantrhinoceroshippopotamus

SortedList readFile(string infile)
{
      SortedList result;
      string s;

      ifstream ist(infile.c_str()); // open file
      // Check if file opened correctly
      if(ist.fail()) throw runtime_error("file not found");

      // Read file into list
      while(ist >> s){
          cout<< s << endl;
          cout << ist << endl;
            result.insert(s);
      }

      return result;
}
4

1 に答える 1

1

左側のoperator>>ストリームと右側の文字列に適用されたとき。

ストリームから「空白」で区切られた単語を文字列に読み取ります。

正確には、次のようになります。

  1. issapce()が false になるまで、文字を読み取って無視します。
  2. isspace()が trueになるまで、文字列の文字を読み取って格納します。
于 2013-05-21T02:13:55.937 に答える