ホーム | ブログ | C++辞典 | サイトマップ | FAQ | 掲示板 | リンク集
メイン・メニュー
インデックス
プログラミング
その他
main のバックアップの現在との差分(No.1)


  • 追加された行はこの色です。
  • 削除された行はこの色です。
* main 関数 [#befffa58]
 
  [[プログラム]]は main [[関数]]から実行が始まる。プログラムの中には、[[大域的]]な main [[関数]]の[[定義]]が含まれていなければならない。
 [[処理系]]は main [[関数]]をあからじめ定義してはならない。main [[関数]]を[[多重定義]]することもできない。main [[関数]]はプログラムの中で使用してはならない(main を呼び出したり、main への[[ポインタ]]を使用することはできない)。main [[関数]]を[[inline>関数#inline]]または[[static>記憶域#static]]として宣言したプログラムは[[不適格>不適格プログラム]]である。
 
  main [[関数]]の[[返却値[型]]は [[int 型>型/3.9.1基本型#int]]でなければならない。返却値型を除いて、main [[関数]]の[[型]]は[[処理系定義]]である。ただし、次の 2 つの形式は常に使用することができる。
  main [[関数]]の[[返却値型]]は [[int 型>型/3.9.1基本型#int]]でなければならない。返却値型を除いて、main [[関数]]の[[型]]は[[処理系定義]]である。ただし、次の 2 つの形式は常に使用することができる。
 
   int ''main''() { /* ... */ }
   int ''main''(int '''argc''', char* '''argv'''[]) { /* ... */ }
   int ''main''() { /* ... */ }~
   int ''main''(int '''argc''', char* '''argv'''[]) { /* ... */ }~
 
 [[自立処理系>処理系#freestanding]]の場合、プログラムに main [[関数]]を定義する必要があるかどうかは処理系定義である。
 
 &aname(argc);
 ** argc [#wb227d65]
  main [[関数]]の第 1 [[仮引数>引数#parameter]]。[[int 型>型/3.9.1基本型#int]]。実際には、argc 以外の名前でも構わない。
 
  argc は、その[[プログラム]]を実行環境の下で起動されたときに、プログラムに渡された[[実引数>引数#argument]]の個数を表す非負(すなわち 0 以上)の[[整数値]]である。プログラムに渡された実引数の個数には、そのプログラム自体を表すものも含まれる。
 
 &aname(argv);
 ** argv [#te5d1267]
  main [[関数]]の第 2 [[仮引数>引数#parameter]]。[[char>型/3.9.1基本型#char]]**[[型]]または[[char>型/3.9.1基本型#char]]*[]型。実際には、argv は別の名前でも構わない。
 
  argv は、その[[プログラム]]を[[実行環境]]の下で起動したときに、プログラムに渡された[[実引数>引数#argument]]の並びを格納した配列を指す。argv [ [[argc>#argc]]-1 ]の値は[[空ポインタ]]である。また、argc が[[空ポインタ]]でない場合、argv[0] にはそのプログラムを稼動するのに用いられた名前を表す [[NTMBS]]、または "" の先頭要素を指す[[ポインタ]]である。
 

トップ   一覧 単語検索   ヘルプ   最終更新のRSS
 ホーム | プロフィール | メール | ログイン | 管理
Copyright © 2005-2009 by TAKAGI Nobuhisa