コマンドラインからパラメーターを受け取る

リモートセンシングの利点の一つに時系列処理、すなわち、経時変化の解析ができるということがあります。しかし、そのためには大量のファイルを一括して処理する必要があります。この次に説明するバッチファイルの中でパラメーターのやりとりを行うにはコマンドラインからパラメーターを入力できると便利です。

例えば、calculate.exe というプログラムがあり、この中で、a, b というパラメーターを使うとき、コマンドプロンプトの中から、

   calculate a b

のようにしてパラメーターをプログラムに渡すことができれば便利です。

これをCプログラムではこのように書きます。

#include <stdlib.h>
#include <math.h>
#include <string.h>
......
main(argc,argv)
int argc;
char *argv;
{
......
}

ここで、argcにはパラメーター(引数)の数+1の整数が入ります。calculate a bの場合、arcgは3になります。また、argvは文字列の配列で、argv[0]="calculate", argv[1]="aに入れた数字", argv[2]="bに入れた数字"が入ります。

ここで、注意しなければならないことは、argcは文字列ですので、数字に変換するには、atoi(), atof(), atol()等の関数を使います。必要なヘッダーファイルをincludeすることを忘れないでください。

では、実際にプログラムを見てみましょう。