2017-02-07 41 views
0

私は私のメインは以下のように定義ここで(int型、char型**)とint型のmain(int型のargc、char型** ARGV)

int main (int, char **) 
{ 
    // my code goes here 
} 

私はどのように取得することができます引数を渡した?

それは

int main (int argc, char **argv) 
{  
    // my code goes here  
    // Here I can get list of arguments using argv 
} 

以下のようなものです。しかし、私は最初のケースのための入力引数を取得する方法がわからない場合。

+1

最初のケースでは、これらの引数には参照する名前がありません。 –

答えて

1

両方とも同じmain機能です。唯一の違いは、最初のケースではパラメータに変数名が与えられていないので、それらを使用できないということです。これは、未使用の変数のコンパイラ警告を取り除くのに便利なパターンです。あなたのプログラムがargcとargvを評価しない場合、コンパイラはあなたがそれらを使用しないと不平を言うかもしれません。パラメータ名を削除すると、コンパイラは不平を言っていません。もちろん、パラメータにアクセスする場合は、名前を記述する必要があります。

もちろん、パラメータが不要な場合は削除することもできます。しかし、main(標準で定義されています)は、パラメータを削除したくない関数の良い例です。もう1つの例は、virtual関数で、オーバーライドですべてのパラメータが必要ない場合があります。

関連する問題