Last-Modified: Sunday, 18 August 2002 22:22:17 +0900 (JST)
- ・int main(void)
-
int main(void)というのは...
コマンドラインからの引数を必要としないとき、仮引数の部分に 引数がないことを明示
するようにそう書いたのでないかと思います。私も詳しいことは調べたことがないので、
本当の答えは知らなかったり... (^^;
昔、C言語を始めた頃は、各関数のインターフェイスが一致している(矛盾しないで動作する
様に書く)のは、プログラマの責任で、コンパイラはあまりチェックしてくれませんでした。
つまり、引数を参照しないなら、仮引数をわざわざ書く必要もないし、書かなくても警告も
出ないものでした。また、仮引数の型や順序が違ってもそのままコンパイルされ、実行すると
クラッシュしてしまうという... 当時は関数単位でコンパイルされ、リンカがそのままリンク
するだけ.... という感じで記憶しています。
しかし、現在では、正しくプロットタイプ宣言をして、関数の型や仮引数の型や並びを宣言
する ANSI Cが多くなり 違いがあると警告するものが普通ですよね...
というわけで、main()は、int main(int, char**); で int を返す return 文があるのが、
正しいとなるはずです。
- ・void型
-
void型って ANSI C で導入されたと記憶しています。違うかな?
ANSI C だと、int main(int, char**); だし、それ以前の K&R なら void がないので、
void main() は void なんて単語は意味不明なのでエラー。
というわけで void main(); や int main(void); は、K&R でも ANSI C でもおかしい....
と私は思っているのですが... あっているかな?? (^^;
- ・int main(void)
-
そういえば 仮引数に void と書く int main(void) などは、引数がない と解釈するのは、
変ですよね。void型で引数があることになりますが...
- ・ストラップ
-
NetBSD ストラップは何色か持って
います。部屋の Goods 保管用の引き出し(^^; に何本か保存されています。保存されているのが
どんな色の組み合わせのものがあったか、帰宅してから現物をみないとわかりませんが...
- ・What date is today?
-
いかん、今日はまだ 18日だ。日付を1日分勘違いして入力してしまったようだ...
うーん このまま、明日なにも書かねば 万事OK? (^^;