C言語 - 真似してはイケナイ基本形
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
**元ネタ [#o9f74d46]
プログラミング初心者スレ・Part1~
http://yutori.2ch.net/test/read.cgi/news4vip/1195645613/~
2 :以下、名無しにかわりましてVIPがお送りします。:2007/...
基本形
#include<stdio.h>
void main()
{
return 0;
}
せっかくだから何が悪いのかもちゃんと書きなさいよ><
**C言語 [#zb974208]
という訳で、元ネタで示された基本形の悪いと考えられるとこ...
ちなみに、元ネタは以下のもの。
#include<stdio.h>
void main()
{
return 0;
}
一見どこにでもあるようなスタイルに見えるが、いくつかの真...
-main関数の戻り値がvoid型になっている
-returnが値を返している
-使ってもいないライブラリを読み込んでいる。
というものだ。
最初の、main関数の戻り値がvoid型になっているのは、非常に...
けれども、ANSIではint型で定義するよう定められている。~
標準に従うべきか?という議論はあるだろうけれども、俺様オ...
スレでは標準にこだわる標準厨が沸くことがあるが、
厳密に標準に準拠する必要はないと筆者は考えているので、
「可能な限り」標準に従えるよう、努力すれば十分だろう。~
それを差し引いても、voidなmain関数はよくない書き方だとい...
ちなみに、大学の講義で使われる教科書や、古いタイプの教授...
さらにいえば、voidすら書かない古いタイプのものある"rogue"...
次のreturnが値を返しているという点だが、
これは「mainの戻り値がvoid型なのに、値を返すのはおかしい...
もしint型なら、値を返すのもおかしくはない。~
voidなのにreturnで返された値は、処理系によっては無視され...
厳密には正しくないので、returnだけにしておくか、そのまま`...
voidであることを読み手に理解させたほうが良いだろう。~
さらに、C言語において引数の定義を書かなかった場合は、「引...
ANSI Cではmainの引数は以下のいずれかである必要がある。
int main( void )
int main( int argc, char *argv[] )
1番目の形式はコマンドライン引数を使わない場合。~
2番目の形式は、1番目がコマンドライン引数の数、2番目が個々...
(非標準ではこれ以外の形式を使えるものも存在する。例とし...
これらを踏まえて書くと、先の基本形は
#include<stdio.h>
int main(void)
{
return 0;
}
となる。~
今回はmainの戻り値をint型に直したので、returnが値を返して...
きちんとした土台の上に家を建てることが、丈夫な家への近道...
さらに言えば、1行目の
#include<stdio.h>
これも不要といえる。いわゆる"おまじない"とされるものであ...
実際これは、画面に文字を表示する等(printf)の便利なライブ...
だが、じっさいのプログラムは何もしていないのでこのライブ...
ことになる。~
最終的には以下のように添削されよう。~
ちなみに、戻り値の意味は 0 = 正常終了 1 = 不正終了。~
int main(void)
{
return 0;
}
終了行:
**元ネタ [#o9f74d46]
プログラミング初心者スレ・Part1~
http://yutori.2ch.net/test/read.cgi/news4vip/1195645613/~
2 :以下、名無しにかわりましてVIPがお送りします。:2007/...
基本形
#include<stdio.h>
void main()
{
return 0;
}
せっかくだから何が悪いのかもちゃんと書きなさいよ><
**C言語 [#zb974208]
という訳で、元ネタで示された基本形の悪いと考えられるとこ...
ちなみに、元ネタは以下のもの。
#include<stdio.h>
void main()
{
return 0;
}
一見どこにでもあるようなスタイルに見えるが、いくつかの真...
-main関数の戻り値がvoid型になっている
-returnが値を返している
-使ってもいないライブラリを読み込んでいる。
というものだ。
最初の、main関数の戻り値がvoid型になっているのは、非常に...
けれども、ANSIではint型で定義するよう定められている。~
標準に従うべきか?という議論はあるだろうけれども、俺様オ...
スレでは標準にこだわる標準厨が沸くことがあるが、
厳密に標準に準拠する必要はないと筆者は考えているので、
「可能な限り」標準に従えるよう、努力すれば十分だろう。~
それを差し引いても、voidなmain関数はよくない書き方だとい...
ちなみに、大学の講義で使われる教科書や、古いタイプの教授...
さらにいえば、voidすら書かない古いタイプのものある"rogue"...
次のreturnが値を返しているという点だが、
これは「mainの戻り値がvoid型なのに、値を返すのはおかしい...
もしint型なら、値を返すのもおかしくはない。~
voidなのにreturnで返された値は、処理系によっては無視され...
厳密には正しくないので、returnだけにしておくか、そのまま`...
voidであることを読み手に理解させたほうが良いだろう。~
さらに、C言語において引数の定義を書かなかった場合は、「引...
ANSI Cではmainの引数は以下のいずれかである必要がある。
int main( void )
int main( int argc, char *argv[] )
1番目の形式はコマンドライン引数を使わない場合。~
2番目の形式は、1番目がコマンドライン引数の数、2番目が個々...
(非標準ではこれ以外の形式を使えるものも存在する。例とし...
これらを踏まえて書くと、先の基本形は
#include<stdio.h>
int main(void)
{
return 0;
}
となる。~
今回はmainの戻り値をint型に直したので、returnが値を返して...
きちんとした土台の上に家を建てることが、丈夫な家への近道...
さらに言えば、1行目の
#include<stdio.h>
これも不要といえる。いわゆる"おまじない"とされるものであ...
実際これは、画面に文字を表示する等(printf)の便利なライブ...
だが、じっさいのプログラムは何もしていないのでこのライブ...
ことになる。~
最終的には以下のように添削されよう。~
ちなみに、戻り値の意味は 0 = 正常終了 1 = 不正終了。~
int main(void)
{
return 0;
}
ページ名: