- ベストアンサー
関数の引数の書き方。
AとBのどちらの書き方でもよいのですか? 私が読んだ本(やさしいC)には、 Aパターンのみだったような? Aパターン ------------------ void main(int argc,char *argv[]) { int i; ・・・・ } Bパターン ------------------ void main(argc, argv) int argc; char *argv[]; { int i; ・・・・ } http://ash.jp/db/ora_c.htm
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
No1の補足でご自身かお書きの通り、ANSIやISOでの標準化前の書式です。 http://ja.wikipedia.org/wiki/C%E8%A8%80%E8%AA%9E#C.E3.81.AE.E8.A6.8F.E6.A0.BC の記述の、「K&R」というのがこの書式です。 ANSI規格化以前は、Cの規格というのが存在しなかったので、「そのときUnixで使われていたCの文法」が事実上の規格でした。世界最初のCについての一般書籍である「The C Programming Language」の著者のカーニハンとリッチの頭文字が K&R で、この本が事実上の規格書でした。第二版はANSI規格のものになっているので、第一版を見る必要があります。訳本だと、 http://www.amazon.co.jp/dp/4320021452
その他の回答 (4)
- wormhole
- ベストアンサー率28% (1626/5665)
>ansi?とかで標準化される前に使っていた書き方でしょうか? ANSI Cで標準化される前というか普及するまでじゃないでしょうか。 今でも使われてることはあるかもしれませんけど。 >ちらほら見かけるので、気持ち悪いです。 過去に書かれたソースやドキュメントもありますし仕方ないかも。
- Tacosan
- ベストアンサー率23% (3656/15482)
「ちょ~昔」 (K&R の初版の時代, 当然 ANSI 標準化以前) は B の書き方しかできませんでしたが, 今では A の書き方をすべきです... というか, B のような書き方をしなければならない事情がないと言っていいでしょう.
お礼
もやもやが、解けました。
- toro-nekomata
- ベストアンサー率45% (24/53)
提示されたURLを見ると,「Pro*C」というプリコンパイラだと出ていますね. そのままC言語と比較してもしょうがないと思います. ちなみに,mainの書き方は,仕様上, 「Aパターンだけ」というわけではないはずです.
補足
ご回答ありがとうございます。 以下のページにもあります。 pro*cではありません。 http://otndnld.oracle.co.jp/document/products/E13161_01/tuxedo/docs10gr3/pgc/pgclt.html 私が、みた本でそう書いて有った様なということです。 仕様上、Aパターンのみとは、思っていません。
- wormhole
- ベストアンサー率28% (1626/5665)
Bパターンはすでに過去のものです。Aパターンで書きましょう。 ついでにmain()関数の型はintですよ。
お礼
もやもやが、解けました。
補足
ごかいとうありがとうございます。 >Bパターンはすでに過去のもの ansi?とかで標準化される前に使っていた書き方でしょうか? ちらほら見かけるので、気持ち悪いです。 検索してもその辺の経緯というか、見つけられません。 気持ち悪いのです。 参考になるページなどあれば、すっきりします。
お礼
もやもやが、解けました。