C++ プログラムを実行した場合
./program arg1
argv[1] は存在しますが、argv[2] が存在するかどうかを確認する方法はありますか?
はい、次の値を見てくださいargc
。
if (argc > 2) {
... use argv[2] ...
}
はい、でargv[i]
終わりNULL
ます。argc
メイン関数にnumber of arguments
渡されます。次のコードからアイデアを得てください。
#include<stdio.h>
int main(int argc, char* argv[]){
int i=0;
while(argv[i]!=NULL){
printf("\n %s is argv %d ",argv[i],i);
i++;
}
printf("\n");
}
desktop:~$ gcc main.c -o main
desktop:~$ ./main grijesh thisiscrazy4
./main is argv 0
grijesh is argv 1
thisiscrazy4 is argv 2
ここで argv は -"./main","grijesh","thisiscrazy4",NULL
で、argc = 3 でした。
argv[0]
実行可能ファイル名 (実行のパス) は、エラー ステートメントをピントするために使用できます。
argv
引数ベクトルとargc
呼ばれ、引数カウンターと呼ばれます。他の変数名も使用できます。
環境変数も含む main() 関数の完全な構文について読んでください。
int main (int argc, char *argv[], char *envp[])
{
return 0;
}
のプロトタイプmain
はそれをすべて言います:
int main(int argc, char **argv);
ここの最初のパラメータargc
は、値を運びますNumber_Of_Arguments(argv[])_Present
反対の方法を試すことができます。のカウントをテストするとargc
、 の存在を知ることができますargv[n]
。