現在C++のプログラミングをVisualStudioを使って行っています
.exeファイルを作成した上で、コマンドプロント上にて
”.exeファイル 数値”
と入力し数値がコマンドプロント上へと表示されるプログラムを作成したいと考えています
.exeファイルの出力とscanfを使い表示することについては実装することが出来るのですが、.exeファイル実行と同時に数値を与え、その値がコマンド上に表示されるプログラムを作成していきたく試行錯誤をしています。
どなたか使用関数や方法をご存知の方がいらっしゃればご教授の程よろしくおねがいします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答4件
0
main関数のコマンドライン引数というもので受け取ることができます。
詳しくはマニュアル参照。
https://msdn.microsoft.com/ja-jp/library/6wd819wh.aspx
https://msdn.microsoft.com/ja-jp/library/17w5ykft.aspx
簡単に説明すると、main関数の第二引数の要素[1]に値が入ってきます。
c++
1int main( int argc, char *argv[], char *envp[] ) 2{ 3 cout << argv[1]; 4}
投稿2017/11/21 08:19
総合スコア17000
0
ベストアンサー
コマンドライン引数で受け取ればいいです。
main関数の引数の int argc, int char* argv[] っていうやつで。
argc が 実行ファイル名( 場合によっては絶対パスだったりする。 ) と 引数の 和になっていまして、
(以下はコードではなく、イメージ。 )
argv[0] = (実行ファイルの)ファイルパス argv[1] = 引数1 argv[2] = 引数2 ...
となっています。
で、ttyp03さんの回答にあるコード、なんか不思議だなぁと思っていたら、
第三引数がある!
なんだろ?と思って「int main( int argc, char *argv[], char *envp[] )」で検索してみると、
がヒットした。
これによると、環境変数が格納されるらしいです。
ですが、今回は使わないので
int main( int argc, char *argv[] )
でいいと思う。
また、今回はただ単に表示するだけのようなので問題ないかもしれませんが、
引き受けたコマンドライン引数はすべて文字列になっています。
なので、どうしても計算するとかで数値が欲しいなら atoi関数 ( C++なら std::atoi関数? ) 等のような変換用の関数で変換して計算する...
っていう感じになるかと。( もしかすると C++11以降とかみたいに条件があるかもしれませんが。 )
あるいは、ほかの方法として、
Windows APIとかのようなAPIでコマンドライン引数を取得するとか。
ただし、少なくとも Windows APIの場合は 一列の文字列になっていたり、wchar_t みたいな感じで若干扱いにくかったりするし、
Windows APIなら Windows上でしか使えない。
投稿2017/11/25 05:51
総合スコア4962
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

0
C++
1#include <iostream> 2 3int main( int argc, char *argv[]) { 4 for ( int i = 0; i < argc; ++i ) { 5 std::cout << i << ':' << argv[i] << std::endl; 6 } 7}
コレをコンパイル/リンクし、コマンドラインから
コレ.exe 123 456 789
してみよう。最初の引数 123 は argv[いくつ] に対応するかな?
投稿2017/11/22 06:08
総合スコア16612
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
exeファイルの中で引数を受けつけるように設定して、
exeファイルの中で引数の値を出力すればできそうですが、やりたいこととは違いますか?
投稿2017/11/21 08:15
総合スコア382
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/11/22 05:56

あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/11/21 08:59