二级指针和char*argv[ ]

二级指针和char*argv[]为什么是一样的呢解释一下不明白

数组可以用指针表示,那么指针数组也可以用指针的指针表示。但数组的数组可以用数组指针表示。
http://www.cnblogs.com/stoneJin/archive/2011/09/21/2184211.html

在函数传递的时候,数组参数退化成指针。指针相当于一维数组。所以指针的指针相当于指针的数组。
关于数组参数退化成指针,参考:http://blog.csdn.net/foreverhuylee/article/details/38333101

一维数组 char c1[] 等价于 char *

这个可以分为两部分理解 首先 char * 里面的 char 代表这个数组里面的元素类型 代表这是一个指针
指针数组 char *c2[] 可以理解成 这个一个数组,每个数组的元素都是一个 char *类型的变量, 同理可得 char *c2[] 等价于 char * *
char * * 里面的char * 代表这个数组的元素是char * 类型的, 后面的
代表这个一个指针

argv[] 本质就是指针呢,懂了吧