私はCでいくつかのプロジェクトに取り組んでいます。私がこれまで行ってきたことは、コマンドラインから引数を読み込み、最小値または最大値を返すことです。例えば:私は何をしたいかコマンドラインで入力タイプを定義する
./find -m -M 1 3 4 5
The smallest number is: 1
The biggest number is 5
は、私がスクリプトを実行するときに、私は、整数と浮動小数点数の間で選択することができます「T」(スイッチケースでは「T」)フラグを追加することです。たとえば、
./find -m -t float 1.2 4.5 1.9 2.3
The smallest number is: 1.2
または整数と同じものです。
ありがとうございました。
ショートフォーマットされたコード:
int main(int argc, char *argv[]){
int array[30];
int x = 0;
while ((x = getopt(argc, argv, "htm")) != -1)
{
switch(x)
{
case 'h' :
printf("Help.\n");
break;
case 't':
break;
case 'm' :
for(int a = optind; a < argc; a++)
{
array[a] = atoi(argv[a]);
}
for (int i = optind; i < argc; i++)
{
for (int j = optind; j < argc - 1; j++)
{
if (array[j] > array[j + 1])
{
int temp = arrray[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
printf("The smallest one: %d\n", array[optind]);
break;
}
}
return 0;
}
あなたの質問は本当にです: "コマンドラインオプションCで?ここで使用する標準関数は 'getopt'です。それはあなたを始めるはずです。 –
@JonathonReinhart私はgetoptを 'while((x = getopt(argc、argv、" htmM "))!= -1)' – HC1122
で使用しています。 –