コマンドラインからの入力リダイレクトを使用して、プログラムに読み取らせたいファイルがあります。たとえば、a.out < file.dat
. 次にcin.get()
、文字を使用して配列に入れようとしました。
既存の投稿のいくつかで見られている入力ファイル名をハードコーディングしたくありません。この入力リダイレクトを として扱う場合stdin
、ファイルを明示的に開く必要がありますか?
int main (int argc, char *argv[])
{
string filename;
ifstream infile;
cin >> filename;
do {
int c = 0;
c = infile.get(); //need to get one character at a time
//further process
} while ( ! infile.eof());
}