argv「配列の最初のインデックスへのポインタ」(char* argv)ではなく、「配列の最初のインデックスへのポインタへのポインタ」として宣言されているのはなぜですか?
ここで「ポインターからポインター」の概念が必要なのはなぜですか?
char* argv[]スペースを間違った場所に置きます。と言うとchar *argv[]、これは「式*argv[n]は型の変数である」ことを意味することは明らかですchar。ポインターとは何か、ポインターへのポインターは何かなどを理解しようとすることに巻き込まれないでください。宣言は、このことに対して実行できる操作を示しています。
char * argv[]同様のC ++コンストラクトと精神的に比較すると、std::string argv[]解析が容易になる場合があります。...実際にそのように書き始めないでください!
char &func(int);ことはありませんどの&func(5)タイプを持っていますchar。

char* argv[]またはの正しい説明ではありませんchar**。それは、文字へのポインターへのポインターです。具体的には、外側のポインターは配列内の最初のポインターを指し、内側のポインターはヌル終端文字列の最初の文字を指します。ここに関係するインデックスはありません。