“数组名被改写成一个指针参数”规则并不是递归定义的。数组的数组会被改写为“数 组的指针”,而不是“指针的指针”。
你之所以能在main()函数中看到char **argv这样的数,是因为argv是个指针数组(即 char *argv[])。这个表达式被编译器改写为指向数组第一个元素的指针,也就是一个指向指针的指针。如果argv参敎事实上被声明为一个数组的数组(也就是char argv[10][15]),它 将被编译器改写为char(* argv)[15](也就是一个字符数组指针),而不是char **argv。