【課題4−13 main関数への引数】
<main関数へ引数を渡す>
コマンドラインで,コマンド名につづいて文字列を加えて入力すると,文字列をその個数がOSを通じてmain関数に渡される.
(例) prompt%
sample 12 54
この場合コマンド名"sample"と"12"と"54"の文字列,およびその数3か引数として渡される.
<argcとargv>
(構文)int main(int argc, char *argv[])
ここで,argcはコマンドライン引数の数,argvはコマンドライン引数の文字列リテラルのアドレスを示すポインタの配列.argcとargvという名前は何でもよいのだが,慣例的にこの名前が使われている.
<文字列以外のデータを引数にする場合>
コマンドラインからの入力はすべて文字列リテラルのアドレスの形式でargvに格納される.コマンドラインから数値データを入力したい場合には,整数はatoiやatolで,浮動小数点数はatofで,数値に変換する必要がある.