- 締切済み
他のファイルからの数値代入
かなり初歩的なこととは思いますが、取り組み始めたばかりで悪戦苦闘しています。 大学からの課題なのですが、 (1) 数値の入力と演算、表示を行うプログラムを組む (2) (1)とは別のファイルに(1)の結果を使って(自動的に読み込む) 更に演算し結果をを表示するプログラムを組む それぞれの入力と演算に関しては… (1) #include <iostream> using namespace std; int main() { int a; cout << "数値入力:" ; cin >> a; a = a * 2; cout << "結果 = " << a << '\n'; return 0; } (2) #include <iostream> using namespace std; int main() { int b; b = a; cout << "結果 = " << b << '\n'; return 0; } このような感じをイメージしているのですが… (2)のファイルでaが定義されていないことになり上手く出来ません。 他のファイルでの演算結果を引用するには、どのようにすればいいのでしょうか? 使用しているのはVC++ 2005です。宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- fatbowler
- ベストアンサー率48% (26/54)
大学の課題であれば、テキストファイルを介してデータの受け渡しをするのが題意でしょう。 > (1)の結果を使って(自動的に読み込む) とは、初心者に出す問題ということを考慮すると「手入力しない」程度の意味だと思います。 詳しい方法はANo.1とダブるので省略します。
- maku_x
- ベストアンサー率44% (164/371)
説明の便宜上、プログラム(1)の実行形式を calc1.exe プログラム(2) の実行形式を calc2.exe とします。 やり方としては2通りほどあって、 (a) calc1.exe の計算結果をテキストファイルに書き込み、calc2.exe でそのテキストファイルから、値を読み込む。ファイル操作の方法については、参考URLが参考になるでしょう。 (b) コマンドプロンプトで実行可能な calc1.exe と calc2.exe を作成する。calc1.exe の計算結果は標準出力に出す。calc2.exe では、標準入力から読み取る処理にする。calc1.exe と calc2.exe はパイプで繋いで実行する。 (a)の場合は、VC++ から直接実行すれば良いですが、(b)の場合は、コマンドプロンプトを開いて、 cd (calc1.exe, calc2.exe が入っているフォルダ名) calc1 | calc2 とコマンド入力により実行します。 プログラミングは (b) の方が簡単ですが、コマンド入力が必要です。(a) ならば、プログラミングは (b) に比べて若干処理が多くなりますが、VC++ 環境から直接実行できるメリットがあります。