OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

MS Visual C++で、Cのargv[]の使い方?

  • すぐに回答を!
  • 質問No.246319
  • 閲覧数1009
  • ありがとう数4
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 86% (174/201)

以前「既存のCプログラムをMS Visual C++へ移行して実行したい 」という
質問をした者です。

既存のCプログラムをビルドするところまではいきました。
****(.exe) inputfile outputfile
というふうにプログラムを実行させたいのですが、
VC++の「実行」ボタンでは入出力ファイルを指定するところが
わかりません。
(「実行」ボタンを押すと、DOS窓が開いて、「inputfile outputfile」
を入力する暇も無くエラーになって終了します)

MS固有の関数はできるだけプログラムに入れたくないのです。
ソフト(VC++)の設定で入出力ファイルを指定する方法を
教えてください。
通報する
  • 回答数4
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.4
レベル13

ベストアンサー率 37% (570/1525)

デバッグ中のプログラムの作業ディレクトリは実行ファイル(Debugフォルダ)では無くプロジェクトフォルダ(Debugフォルダの1階層上)に設定されるはずです。

以下、老婆心(っていうか仕様を変えてしまうだかダメ?)ですが…
私ならargcの値を元に
case 1:inputfile,outputfileともに入力
case 2:outputファイルのみ入力、inputfileはargv[1]
case 3:outputはargv[2]、inputfileはargv[1]
と、キーボードから入力するように書き換えます。
お礼コメント
oddo

お礼率 86% (174/201)

toysmithさん、回答ありがとうございました。
お礼が遅くなってすみません。

>以下、老婆心(っていうか仕様を変えてしまうだかダメ?)ですが…
>私ならargcの値を元に
>case 1:inputfile,outputfileともに入力
>case 2:outputファイルのみ入力、inputfileはargv[1]
>case 3:outputはargv[2]、inputfileはargv[1]
>と、キーボードから入力するように書き換えます。
そういった方法もあるんですね!
C言語で書いてあれば、入出力のところは変更されてもかまわないので、
考えてみます。
ありがとうございました。
投稿日時 - 2002-04-05 10:25:41
-PR-
-PR-

その他の回答 (全3件)

  • 回答No.1
レベル9

ベストアンサー率 35% (33/92)

Visual C++ から離れて6年ぐらい経つので、ぜんぜん外しているかも知れませんが、 プロジェクトの設定等に「コマンドライン引数」とか言う項目はありませんか? 今、手元にVC++ が無いので、確認は出来ませんが。。。 とりあえず、他の人の回答を待ってみましょう。。。 ...続きを読む
Visual C++ から離れて6年ぐらい経つので、ぜんぜん外しているかも知れませんが、
プロジェクトの設定等に「コマンドライン引数」とか言う項目はありませんか?
今、手元にVC++ が無いので、確認は出来ませんが。。。

とりあえず、他の人の回答を待ってみましょう。。。
お礼コメント
oddo

お礼率 86% (174/201)

mrt136さん、早速の回答ありがとうございました。
No.2のa-kumaさんの言うとおり、
プロジェクトの設定の、「デバッグ」というところに
「プログラムの引数」というフィールドがありました。
これから実行してみます。
投稿日時 - 2002-04-03 16:53:04


  • 回答No.2
レベル14

ベストアンサー率 50% (1122/2211)

プロジェクトの設定ダイアログに「デバッグ」というタブがあるはずです。 そこに「プログラムの引数」という入力フィールドがあるので、そこに引数 (質問の例だと .exe より後の inputfile outputfile)を記述してください。 # VC4.2 の知識を元に書いているので、多少名前が違うかもしれません ...続きを読む
プロジェクトの設定ダイアログに「デバッグ」というタブがあるはずです。

そこに「プログラムの引数」という入力フィールドがあるので、そこに引数
(質問の例だと .exe より後の inputfile outputfile)を記述してください。

# VC4.2 の知識を元に書いているので、多少名前が違うかもしれません
補足コメント
oddo

お礼率 86% (174/201)

すみません、実行してみたのですが、
fopen()の返り値がNULLでエラーになってしまいました。
入力ファイルは、exeファイルと同じところに置いているの
ですが、なにか問題があるのでしょうか?
(場所を指定しないといけないのでしょうか??)
ちなみに入力ファイルはバイナリで、これもなにか問題があるのでしょうか?
(fopenのモードは「rb」にしています)
投稿日時 - 2002-04-03 16:53:18
お礼コメント
oddo

お礼率 86% (174/201)

a-kumaさん、またまた早速の回答ありがとうございました。
VC++6.0も同じ名前で、同じ場所に入力フィールドがありました。

これで実行してみます!
投稿日時 - 2002-04-03 16:51:15
  • 回答No.3
レベル14

ベストアンサー率 50% (1122/2211)

> 入力ファイルは、exeファイルと同じところに置いているの > ですが、なにか問題があるのでしょうか? > (場所を指定しないといけないのでしょうか??) デバッグ実行時のディレクトリは特に指定しなければ、実行形式ファイルを 作成したところだったような記憶があるのですが、記憶違いかもしれません (^^; 引数を設定したところで、 ・「作業用のディレクトリ」 ...続きを読む
> 入力ファイルは、exeファイルと同じところに置いているの
> ですが、なにか問題があるのでしょうか?
> (場所を指定しないといけないのでしょうか??)

デバッグ実行時のディレクトリは特に指定しなければ、実行形式ファイルを
作成したところだったような記憶があるのですが、記憶違いかもしれません (^^;

引数を設定したところで、

・「作業用のディレクトリ」に、inputfile が置いてあるところを記述する
・inputfile をフルパスで記述する

のどちらかをしてください。
お礼コメント
oddo

お礼率 86% (174/201)

a-kumaさん、いつもありがとうございます。
お礼が遅くなってすみません。

「作業用のディレクトリ」に、inputfile が置いてあるところを記述する

これを試したところ、実行できました。
いまは新たな問題にぶつかってます(^^;

また何かありましたら、よろしくおねがいします。
投稿日時 - 2002-04-05 10:21:53
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ