C语言数组指针调用问题

来源:百度知道 编辑:UC知道 时间:2024/05/29 08:56:59
void ahead_sub(WINDOW **inputbox[],int n)
{

for (i=0;i<n;i++ )
{
*inputbox[i]= create_no_border_win();
}
}

void ah()
{
WINDOW *box[3]={NULL};
ahead_sub(box[0],3);
}
请问,我想用**inputbox[],来接收box数组的地址,可为什么在ahead_sub(box[0],3);老是报错呢?
是不是我调用错了,要怎么改呢?
错误提示:
warning: passing arg 2 of `ahead_sub' from incompatible pointer type
我就是想传数组首地址的地址,所以才用**来接收,&box还是出错,是上头定义错了还是实参传参写错

参数类型不匹配,形参是指向指针的指针类型,实参是指针类型
把第一行改成 void ahead_sub(WINDOW *inputbox[],int n)
或者把倒数第2行改成 ahead_sub(&box[0],3);

靠 你用的是指针的指针啊 怎么可以用box[0]接收他呢?*box[0]差不多 但你给的程序不完整 不好理解

我想你需要把第一行中改为WINDOW *inputbox[]
你的**和下面的类型不匹配!