[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[connect24h:6763] Re: プログラムの稼動監視ツール



栗山です。

From: Tietew <tietew@xxxxxxxxxx>
Subject: [connect24h:6747] Re: プログラムの稼動監視ツール
Date: Wed, 19 Nov 2003 21:49:13 +0900
Message-ID: <20031119214112.D307.TIETEW@xxxxxxxxxx>

> そーではなくて,ANSI C で main 関数は以下のうち何れかのシグネチャ
> を持つと決められているからです。そうじゃないプログラムは ANSI 非
> 準拠になります。(K&R 時代にはそもそも void 無い)
>  ・int main()
>  ・int main(int, char **)
>  ・int main(int, char **, [ベンダ依存引数...])

そうでしたか...。私の手元には、K&RのSECOND EDITION
(表紙に"ANSI C"と赤くプリントされています)があるので、
Chapter 4 にある "4.1 Basics of Functions" の最初の
サンプル・コードを見てみたら、main関数は、

main()
{
    /* snip */
}

となっていました。

ANSI C と書かれているからには、これで良いものと思ってしまいますね。
この本は、リファレンス用に買ったものなので、じっくり読んでいなかった
のですが、これを見てしまうと、
返値も引数も好きにして良いものだと思ってしまいますね。

>  ・int main()

ところで、int main(void) ではなくて、int main()が本当なのでしょうか?

> あらゆる関数が値を返すべき云々は,数学の関数と勘違いしているか関
> 数型言語と勘違いしているかのどっちかでしょう。function を「機能」
> と捉えれば別に返値が無くてもおかしくない。

なるほど。この辺の話は、私の好きな所です(^^)。

--
Tolu Kuliyama
mailto: tolu@xxxxxxxxxxxxxxxxx