工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> C言語

C - コマンドライン引数

C プログラムの実行時に、コマンド ラインから 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");
   }
}

上記のコードを単一の引数でコンパイルして実行すると、次の結果が生成されます。

$./a.out testing
The argument supplied is testing

上記のコードを 2 つの引数でコンパイルして実行すると、次の結果が生成されます。

$./a.out testing1 testing2
Too many arguments supplied.

上記のコードをコンパイルして引数を渡さずに実行すると、次の結果が生成されます。

$./a.out
One argument expected

argv[0] に注意してください プログラム自体の名前と argv[1] を保持します は、指定された最初のコマンド ライン引数へのポインターであり、*argv[n] は最後の引数です。引数が指定されていない場合、argc は 1 になり、引数を 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 "testing1 testing2"

Program name ./a.out
The argument supplied is testing1 testing2

C言語

  1. デコーダ
  2. Python 関数の引数
  3. Java コマンドライン引数
  4. ライン効率とは何ですか?
  5. 生産ラインとは?
  6. ビルディング ラインとは?
  7. ブリッジ タップとは?
  8. 組立ラインとは?
  9. 精密スリッターラインのご紹介
  10. ケミカル包装ラインのアップグレード
  11. ラインのプロファイルとサーフェスのプロファイル