2016-05-13 8 views
1

私は競争的なプログラミングのために崇高なテキスト3を使用しています。私はC++言語が好きです。プログラムを何度も実行して出力をチェックしなければならないので、ファイルへの入力を書き留めてそこから入力を読み込む方が簡単です。このために私はいつも私のプログラムにファイルから読み込む余分な行を書き、私の解決策を提出する前にそれらの行をコメントアウトします。あなたはこれを取り除く方法を提案できますか?プログラムが標準入力ではなくファイルから入力を受け取るデフォルトの入力ソースを変更する方法があることを期待しています。崇高なテキストのデフォルト入力ソースを変更する

答えて

1

freopenで条件付きコードを書くことができます(C++でも動作します)。 CodeChefによってサポートされる1つの方法は

#ifndef ONLINE_JUDGE 
    freopen("in.txt", "r", stdin); 
#endif 

. . . 

cin >> something; // This will be read from 'in.txt' if ONLINE_JUDGE is not defined 

マクロONLINE_JUDGEが異なることがあるが、freopenは、入力ストリームのソースを変更する方法です。

EDIT:、崇高なテキスト3でこれを達成するためのカスタムビルドシステム(Sublime text 3 - compile program and run in terminal)を作成し、コマンドラインからのI/Oリダイレクタを使用するには、例えば

g++ -Wall -o code code.cpp 
./code < in.txt 

これは、ファイルからの入力を読み込みますまるでそれがスタンダードだったかのように。

希望します。

+0

私は崇高なテキスト3の設定で解決策を期待していました – froghramar

関連する問題