next up previous contents
Next: 変数の型 Up: C言語プログラムの概要 Previous: インクルード文   Contents

mainプログラム

プログラムの本体部分である。すべての処理は、ここから始まる。 いろいろな条件に応じて、関数や副プログラムを呼び出したりすることにより、 処理を実行する。 なお、C言語では、mainプログラムにも以下のように、引数を記述することができ、 また、返り値を返すこともできる。(ただし、int型のみ)


int main(int argc, char *argv[]){

ここで、mainプログラムに与えられる引数は、 実行プログラムに対して与えられたオプションが代入される。

具体的には、argcは、mainプログラムに当てえられたオプションの数であり、 *argv[]は、オプション文字列へのポインタの配列である。 (ポインタと配列の関係は、後で述べる)

上記のように、mainプログラムに引数を記述したプログラムでは、 実行の際に、実行プログラムにオプションを与えることができる。 例えば、実行プログラム名がkojimaであり、 その使用方法がオプション-hで表示されるとすると、 以下のように起動すれば良い。

(ここで、%>は、コマンドプロンプトを意味するものとする)

%> kojima -h

例えば、圧縮解凍ソフトであるLhaは、オフションを指定しない場合、 以下のように使用方法が表示される。


LHarc for UNIX V 1.02 Copyright(C) 1989 Y.Tagawa
LHx for MSDOS V C2.01 Copyright(C) 1990 H.Yoshizaki
LHx(arc) for OSK V 2.01 Modified 1990 Momozou
LHa for UNIX V 1.00 Copyright(C) 1992 Masaru Oki
usage: lha [-]{axelvudmcp}[qvnfodizg012][w=<dir>] archive_file [file...]
commands: options:
a Add(or replace) to archive q quiet
x,e EXtract from archive v verbose
l,v List / Verbose List n not execute
u Update newer files to archive f force (over write at extract)
d Delete from archive t FILES are TEXT file
m Move to archive (means 'ad') o use LHarc compatible method (a/u)
c re-Construct new archive w=<dir> specify extract directory (x/e)
p Print to STDOUT from archive d delete FILES after (a/u/c)
t Test file CRC in archive i ignore directory path (x/e)
z files not compress (a/u)
g [Generic] format (for compatibility)
0/1/2 header level (a/u)
e TEXT code convert from/to EUC



kojima hirohisa
2001-03-05