たまにはC言語の話題

| コメント(2) | トラックバック(0)

スラッシュドット・ジャパン | ほぼすべてのBSDに存在してきたseekdir()のバグが25歳で死すという記事があったので、どんなbugでどんな修正をしたのか見てみた。個人的にLine48あたりがすげー気になった。(文法的な意味で)

例えば2つのint値を受け取り、足し算をし、その結果を返すような関数を定義するとしたら普通
int add(int a, int b) {/* 処理 */}と宣言するだろう。
ところが上記のソースを見ると
int add(a,b)
int a, b;
{/* 処理 */}
といった感じで宣言している。これはアリなのか?と思い確かめてみた。

#gcc -W test.c
#./a.out
6

コンパイル通ったし、しかも動いた...(´Д`)
こういう書き方初めて知ったー。なんか名前ついてるのかなぁ?

やっぱり、出来る人のソースを読むのは新しい発見が多いので為になる。

トラックバック(0)

トラックバックURL: https://hoge.sub.jp/blog-cgi/mt/mt-tb.cgi/1565

このブログ記事について

このページは、Lyoが2008年5月10日 23:31に書いたブログ記事です。

ひとつ前のブログ記事は「Effective Java 一人読書会(4章:クラスとインタフェース編)」です。

次のブログ記事は「人生のモテ期」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

月別 アーカイブ

OpenID対応しています OpenIDについて
Powered by Movable Type 7.9.3