0

次のシグネチャを使用してメイン関数を実装する必要があります。

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

コマンドライン引数とは何ですか? なぜテスト ケースが必要ないのですか? そして、「署名」とはどういう意味ですか?関数プロトタイプだけですか?

そして、これらのことを明確にしたら、この質問を編集して、解決策への試みを含めます。

このプログラムが本質的に何をしているのか混乱しています。整数値を返すことがわかりますが、その整数値は何を表しているのでしょうか? また、引数リストで指定された引数を使用して整数値を返すにはどうすればよいですか? 彼らはどういう意味ですか?助けてくれてありがとう!

4

1 に答える 1

1

これはほとんど努力を必要としない恐ろしい質問ですが、私はあなたの混乱を和らげる手助けをする義務があると感じています.

これは、名前 ( argv[0])を出力し、少なくとも 1 つの引数を必要とするプログラムです。少なくとも 1 つの引数が指定されていない場合は、失敗を示すために 1 が返されます。それ以外の場合は、引数を出力し、成功を示すために 0 を返します (シェルまたは開始者に対して)。

#include <stdio.h>

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

    printf("Hello World, my name is \"%s\" \n", argv[0]);

    if (argc < 2) {
        printf("I require at least 1 argument! Exiting!\n");
        return 1;  // Indicate failure.
    }


    printf("I was given %d command-line arguments:\n", argc-1);
    for (i=1; i<argc; i++) {
        printf("  [%d] %s\n", i, argv[i]);
    }

    return 0;    // Indicate success
} 

そのプログラムをコンパイルして実行すると、物事がより明確になるはずです。

于 2013-05-16T06:49:58.040 に答える