main関数の引数

著者:崎間

main関数に引数をつけることで,コマンドラインから引数を取得することができます.

指定方法

main関数の引数は

int main(int argc, char *argv[]){

と指定します.

これを使ったプログラムは,例えばつぎのようになります.

#include <stdio.h>

int main(int argc, char *argv[]){
  int i;

  printf("argc = %d\n", argc);

  for (i=0 ; i<argc ; i++) {
    printf("argv[%d] = %s\n", i, argv[i]);
  }

  return 0;
}

このプログラムを実行するとき,コマンドラインで引数をつけます.

$ ./arg1 1 2 sakima

すると実行結果は下のようになります.

argc = 4
argv[0] = ./arg1
argv[1] = 1
argv[2] = 2
argv[3] = sakima

argcは「コマンドラインのパラメータの数+1」の整数です. 1足してあるのは,プログラムを実行したコマンド自体(./arg1)も含まれるためです.これは,配列argvの大きさになっています.

argv[0], argv[1], ... は
argv[0] プログラムファイルのパスの文字列へのポインタ
argv[1] 1番目のコマンドライン引数の文字列へのポインタ
argv[2] 2番目のコマンドライン引数の文字列へのポインタ
... ...

のようにコマンドライン引数の文字列へのポインタが納められた配列になっています.

Valid XHTML 1.1! home > コンピュータ > プログラミング >
リロード   新規 編集 凍結 差分 添付 複製 改名   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS
Modified by 物理のかぎプロジェクト PukiWiki 1.4.5_1 Copyright © 2001-2005 PukiWiki Developers Team. License is GPL.
Based on "PukiWiki" 1.3 by yu-jiPowered by PHP 5.3.29HTML convert time to 0.007 sec.