main()中的argv声明不一致

时间:2016-05-24 11:35:26

标签: c

我是c编程的新手。我之间的区别很困惑:

int main (int argc, char **argv)

int main (int argc, char *argv[])

它们在C编程中是一样的吗?

1 个答案:

答案 0 :(得分:1)

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

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

char*的arrar的第一个元素当然是char**类型,因此指向第一个元素的指针将是{{1}}类型。