1

これは本当の初心者の質問ですが、私のコンパイラはエラーを出しています:

std::fstream has no member named getc

これは、次のコード行に関連しています。

char ch;

for ((ch=fpin.getc());!fpin.eof();(ch=fpin.getc()))

fpin はファイルで、開くことなどを確認しました。問題ありません。また、コードの品質についても心配していません。コードが機能することだけが心配です。私は問題が見えないほど長い間それを見つめてきました。

4

3 に答える 3

4

呼び出そうとしているメソッドは ですstd::fstream::getstd::fstream ここについて読むことができます。

于 2012-04-25T21:14:56.940 に答える
3

まあ、コンパイラは正しいです、getc()は のメソッドではありませんifstream。オプションは次のとおりです。

http://en.cppreference.com/w/cpp/io/basic_ifstream

いつもの

while(std::getline(myInStream, sstr)) 
{ 
    // ... 
} 

あなたが望むものです。

于 2012-04-25T21:16:02.033 に答える
2

ジェクリンが言ったことですが、キャラクターごとに取得したい場合はch = fpin.get()、単一のキャラクターを取得することができます。またはfpin >> ch;、単一の文字を取得して空白を無視することもできます。

于 2012-04-25T21:19:13.690 に答える