关于实参为char二维指针而形参为char类型的疑惑
char **snake;
: //初始化 snake
:
int Eat(char s[2])//声明函数
Eat(snake[0]); //疑惑处
请问为什么能这样调用,传给形参的又是什么呢?
[解决办法]
snake[0]是一个一级指针,函数的形参也是一个一级指针啊……咋不能调用
[解决办法]
数组的首地址就是个指针,
[解决办法]
其实形参就是声明了一个指向包含两个元素的char类型指针。
snake是指向指针的指针,因此*snake是就是指向char的指针。
所以可以调用的。
[解决办法]
int Eat(char s[2])
形参为 char *
snake[0] 为char*