• ベストアンサー

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

jactaの回答

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.8

mac_resさんを見習って、私もまともに答えます。 プログラムが起動すると、スタートアップと呼ばれる一種の関数が呼び出されます。コンパイラによって、この関数名や処理の内容は少しずつ違いますが、だいたいの意味において、 void start(void) {  int argc;  char **argv;  ...  /* 初期値付き変数の初期化 */  /* 初期値なし変数のゼロクリア */  /* コマンドライン引数を解析して、argcとargvを組み立てる */  ...  stdin = fopen("xxx", "r");  stdout = fopen("yyy", "w");  stderr = fopen("zzz", "w");  ...  exit(main(argc, argv)); } 最後に、mainを呼び出して、その返却値をexitに渡していますね。 ここで呼び出しているmainはプログラマが自分で用意しなければなりません。そして、ここで呼び出されているので、プログラマから見れば、最初にmain関数が呼び出されることになるのです。 ここで、mainの返却値(=exit関数の引数)がどのように使われるかは、コンパイラによって異なります。また、exit関数の結果として行われる終了処理がどのようなものになるかもコンパイラに依存します。

moncyasan
質問者

お礼

ご返答ありがとうございました。

関連するQ&A

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

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

  • 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型とかも使えます。 お願いします。

  • int型 void型について

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

  • int void (main)の意味・・・

    僕が今習っている学校では、『#include <stcio.h>』のあとに『void main()』と書きます。※『;』はつけません。 しかし、参考書などを見ると、『int main(void);』と書いてあります。これ(int main(void))はどういう意味なのかが知りたいのですが・・・。 あとできれば、『void main()』との違いも書いてくれれば幸いなのですが・・・。 回答お願いします。

  • void main()って誰が最初?:ANSI-C

    ANSI-C言語に関することです。 ベンダー拡張やOS固有機能は除外してください。 よく、書籍でvoid main(void)と書いたサンプルを見かけます。 プログラミング言語Cではint main(void)だし、C言語FAQでも「void main(void)は間違いである」と書いてあるのに…。 過去の質問への回答で「ANSI-Cでは…」と解説している人がいたのでANSI-Cの仕様を調べてもint main(void)の方が正しいように書かれていました。 これだけ資料が揃っているのにいまだにvoid main(void)と書かれた書籍がイッパイあるのはなぜなんでしょう? 最初にvoid main(void)って書いた人がものすごく影響力のある人だったのか?と想像してしまいます。 いったい誰が最初にvoid main(void)と書き始めたのでしょうか?

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

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

  • public static void main (String args[])

    基本すぎて申し訳ありませんが、 public static void main (String args[])とはどういう意味を持っていますか? 教えてください。。

    • ベストアンサー
    • Java
  • public static void main...のvoidってここではどういう意味なんでしょうか?

    public static void main...のvoidってここではどういう意味なんでしょうか? ちなみに辞書だとこんな意味がありました。 void 【名】 1. 空間{くうかん}、空洞{くうどう}、真空{しんくう}、くぼみ、虚空{こくう}、すき間、間隙{かんげき}、空隙(率){くうげき(りつ)}、空所{くうしょ}、孔隙{こうげき} 2. 空虚感{くうきょかん}、むなしさ、喪失感{そうしつ かん} 【形】 1. 欠けた、空の、何もない、中空{ちゅうくう}の◆【類】empty 2. 空虚{くうきょ}な、うつろな 3. 無効{むこう}の、役立たず{やくたたず}の 4. 持ち主のない 【自動】 排尿{はいにょう}する、排便{はいべん}する 【他動】 1. ~を無効{むこう}にする、取り消す 2. ~を放出{ほうしゅつ}する、排せつする、放尿{ほうにょう}する

    • ベストアンサー
    • Java
  • public static void main(String args

    public static void main(String args[]) { と public static void main(String[] args) { は何が違います?

    • ベストアンサー
    • Java