プログラムを実行するときに、コマンドラインからCプログラムに値を渡すことができます。これらの値はコマンドラインパラメーターと呼ばれ、プログラムにとって重要です。特に、これらの値をコードにハードコーディングするのではなく、外部からプログラムを制御する場合に重要です。
コマンドラインパラメーターは、main()関数パラメーターを使用して処理されます。ここで、argc は渡されたパラメーターの数を示し、argv [] はプログラムに渡された各パラメーターを指すポインターの配列です。
以下は簡単な例です。コマンドラインがパラメーターを提供しているかどうかを確認し、パラメーターに従って対応するアクションを実行します。
#include <stdio.h> int main( int argc, char *argv[] ) { if( argc == 2 ) { printf("The argument supplied is %s/n", argv[1]); }
else if( argc > 2 )
{ printf("Too many arguments supplied./n"); } else { printf("One argument expected./n"); } }
上記のコードを1つのパラメーターでコンパイルして実行すると、次の結果が生成されます。
$ ./a.outテスト提供された引数はテストです
上記のコードを2つのパラメーターでコンパイルして実行すると、次の結果が生成されます。
$ ./a.outtesting1testing2指定された引数が多すぎます。
パラメータを渡さずに上記のコードをコンパイルして実行すると、次の結果が生成されます。
$ ./ a.out1つの引数が必要です
argv [0] はプログラムの名前を格納し、argv [1] は最初のコマンドラインパラメータへのポインタであり、* argv [n]は最後のパラメータであることに注意してください。
パラメータが指定されていない場合、argcは1になります。それ以外の場合、引数が渡された場合、argc は2に設定されます。
複数のコマンドラインパラメータはスペースで区切られますが、パラメータ自体にスペースが含まれている場合は、パラメータを渡すときにパラメータを二重引用符 ""または一重引用符 "で囲む必要があります。
上記の例を書き直してみましょう。スペースがあります。この観点を通過して、二重引用符または一重引用符 "" ""で囲むことができます。
上記の例を書き直して、二重引用符で囲んだコマンドラインパラメータをプログラムに渡します。
#include <stdio.h> int main( int argc, char *argv[] ) { printf("Program name %s/n", argv[0]); if( argc == 2 )
{ printf("The argument supplied is %s/n", argv[1]); } else if( argc > 2 ) { printf("Too many arguments supplied./n"); }
else { printf("One argument expected./n"); } }
スペースで区切られ、二重引用符で囲まれた単純なパラメーターを使用して、上記のコードをコンパイルして実行すると、次の結果が生成されます。
$ ./ a.out "testing1testing2"プログラム名./a.out指定された引数はtesting1testing2です。
さらに、プログラミング能力を向上させたい場合は、C言語とC ++プログラミングを学んでください。カーブで追い越し、一歩速く!ここでお手伝いできるかもしれません〜
UPは、C / C ++プログラミングの学習に関するビデオチュートリアルをホームページにアップロードしています。興味のある方、または学習している方は、ぜひご覧ください。お役に立てれば幸いです〜
共有(ソースコード、実際のプロジェクトビデオ、プロジェクトノート、基本的な入門チュートリアル)
キャリアを変えてプログラミングを学び、自分で考えるよりも多くの情報を使って学び、成長するパートナーを歓迎します。
プログラミング学習:
プログラミング学習: