• ベストアンサー

int void (main)の意味・・・

MrBanの回答

  • MrBan
  • ベストアンサー率53% (331/615)
回答No.9

> 古い規格を元に今でもvoid main()を使えないと思っていませんか? 議論する気はありませんが、ISO/IEC9899:1999での現状追認は知ってますし、 C99準拠になっていて処理系定義なら合仕様なことは理解してます。 但し、現実的には、例えばC99指定したGCCなどを除くと、 現行VCやBCC等はC99準拠でもJISX3010準拠でもないコンパイラですので、 もしもこれらでvoidを使って教えてるならやはり不適切といっていいと思ってますし、 言語仕様の変遷や経緯とか普通いきなり説明しないでしょうから、 どうせ呪文のように教えるなら、なぜ明示規定のintにしないのか。 初心者にいきなり明示規定でない処理系定義なものを教えてるなら、 その姿勢も不適切といって過言ではないとは思ってます。

関連するQ&A

  • int main()、void main()、void main(void)、int main(void)

    今日、大学でC言語の講義の時間、先生が、 #include <stdio.h> void main(void){ } と宣言してプログラムを書くと教えていました。 main関数には、 main() void main() void main( void ) int main() int main( void ) と、人によりいくつかの描き方があったりします。 どれが本当は正しいのでしょうか? void mainはすべきではないとなんかの本で読んだのですが・・。

  • int main(void)

    C言語の問題集をやっているのですが、 本にはmain関数の最初にint main(void)のような書き方が してあります。 学校ではmain() と習ったのですが、本には上のようにかいてあります。 どのように違うのでしょうか? というかmain関数のところに引数が入っている意味がわかりません。 どういうことがというと(void)ってなんですか? またint mainというのはint型の関数だと思うのですが、 なかではdouble型とかも使えます。 お願いします。

  • main()とint main(void)の違い

    最初main()と習ったのですが、最近学校でmain()ではなくint main(void)を使うように なりました。 どのように違うのでしょうか? main関数のところに引数が入っている意味がわかりません。 (void)ってなんですか? そもそも引数って何ですか? あと、プログラムの最後にreturn(0)って書いてあるんですが、これはどういう意味ですか? 回答よろしくお願いします。

  • int main(void) の意味について教えて下さい

     お早う御座います、Cの初心者です、宜しくお願いします。  最初にmain関数は、「int main(void)」という風に始まりますが 、main関数がstring型をとる場合とか、実際に他の関数から呼ばれる場合は有るのでしょうか。

  • int型 void型について

    C初心者です。 「int main(voido)」や「void main(void)」がよくわかりません。 int、void、(void)とは返り値を返す、返さないということが理解できません。小学生でもわかる説明をしていただけないでしょうか? よろしくお願いいたします。 

  • int main(int argc, char* argv[]) についての質問

    こんにちは.つね日ごろ思っている質問させてください. Cの参考書には, (1) void main(void) { } (2) int main(int argc, char* argv[]) { return 0; } の2つのパターンが記載されていますが, どういう違いがあるのでしょうか? (1)の場合main関数は,型を持たず,引数も持たない. ※Turbo Cなどのコンパイラーでは, return文がないと警告出ます. (2)の場合は,int 型をかえし,引数はint型 変数と char型ポインタ配列(?) を指定している. といったくらいしか分かりません. (2)に関してもう少し述べれば, コマンドラインからファイルを指定し,実行することが できると勉強した記憶があるのですが, 理解があいまいです. 特に(2)の場合のmain関数の意味と,その使い方について アドバイスお願い致します.

  • void main (void)について、、、

    またまたすみません。 プログラムを書くときに、   void main (void)   と、とりあえず最初にこれを書く、と覚えていて意味がわかりません。 小学生でも理解できるくらいに噛み砕いて説明をお願いします。

  • int main()の・・・

    初心者です。 ものすごく基本的な質問なんですが、 int main() のint型は、どういった意味なんでしょうか? char main() はだめなんでしょうか? それと ()内意味はなんでしょうか? よろしくお願いします。

  • void **(char や intのアドレス混在)について

    printf("%d",voidd[0]);にてほしい値が表示されません。 どうすればいいですか? よろしくお願いします。 #include<stdio.h> int main() { /* Calc.StringExpressionGet("1+((2+34)*2-111*77)*5-67*8/90"); Calc.StringExpressionResolve(); Calc.Print(); */ int num[3]; num[0]=111; num[1]=222; num[2]=333; char str[4]="ABC"; void **voidd; voidd=new void*[6]; voidd[0]=(void *)&num[0]; voidd[1]=(void *)&str[0]; voidd[2]=(void *)&num[1]; voidd[3]=(void *)&str[1]; voidd[4]=(void *)&num[2]; voidd[5]=(void *)&str[2]; printf("%d",voidd[0]); getchar(); return 0; }

  • int とcharの使い方と違い

    教えてgooに投稿するのは初めてですがよろしくお願いします。 最近C言語を勉強し始めた初心者です。 ネットのサイトを見て独学でしています。 過去スレッドをさらっと見て聞きたいことが書いてなかったので投稿します。(同じスレッドがあったらすみませんOTL) #include<stdio.h> int main(void) { int str='a'; printf("str=%c\n",str); return0; } この上のプログラムでは str=a と出て、エラーが出ずにコンパイル出来ました。でも、 #include<stdio.h> int main(void) { int str[]="abc"; printf("str=%s\n",str); return0; } とするとエラーが出ます。 int とcharの使い方と違いについて詳しく教えてほしいです>< お願いします。