C main()中的argv声明不一致

C main()中的argv声明不一致,c,C,我是c编程新手。我对以下两者之间的区别感到困惑: int main (int argc, char **argv) 及 它们在C编程中是相同的吗?是的,当它们是函数参数列表的一部分时,它们是相同的 具体是char*argv[]实际上声明了一个大小未知的数组,其中数组中的每个项都是指针。但是,每当数组声明作为函数参数列表的一部分出现时,它就会被指向第一个元素的指针静静地替换 char*数组的第一个元素当然是类型char*,因此指向第一个元素的指针应该是类型char**线程不是重复的,它只关心ma

我是c编程新手。我对以下两者之间的区别感到困惑:

int main (int argc, char **argv)


它们在C编程中是相同的吗?

是的,当它们是函数参数列表的一部分时,它们是相同的

具体是
char*argv[]
实际上声明了一个大小未知的数组,其中数组中的每个项都是指针。但是,每当数组声明作为函数参数列表的一部分出现时,它就会被指向第一个元素的指针静静地替换


char*
数组的第一个元素当然是类型
char*
,因此指向第一个元素的指针应该是类型
char**

线程不是重复的,它只关心main的格式,而不关心
char**
char*[]
之间的区别,这就是这个问题的实质。我会重新打开这个。@MohitJain,看起来可能是重复的。然而,这条线索是一条古老的线索,用以给出主观和基于意见的答案(它有许多真正糟糕的答案),所以我不确定它是否适合使用。@Lundin是的,但问题的意图是相同的。这里的答案基本上适用于这个问题。@MohitJain这样一条蹩脚的线索。。。即使是最上面的答案也有点糟糕,因为他拖拉了各种不相关的东西,比如函数指针,答案最多应该只有几段。@Lundin-Hmmm。在这种情况下,我们至少需要一个问题的好答案,第二个问题应该标记为重复。在此处编辑并更新现有答案,或将旧答案标记为此答案的副本,或在此处添加一些更新的答案。我觉得前者是个好主意(更简单)。但根据你在社区的经验,你可能会做出更好的决定。
int main (int argc, char *argv[])