Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C中作为函数参数传递字符数组_C_Arrays_Parameter Passing - Fatal编程技术网

在C中作为函数参数传递字符数组

在C中作为函数参数传递字符数组,c,arrays,parameter-passing,C,Arrays,Parameter Passing,我想将arr2复制到arr,并将arr作为函数参数传递 void func(char * array) {} int main(void) { int a; char arr[6][50]; char arr2[][50]={"qweeeaa","bbbb","ffaa","eeaa","aaaa","ffaa"}; for(a=0; a<6;a++) { strcpy(arr[a], arr2[a]); } f

我想将arr2复制到arr,并将arr作为函数参数传递

void func(char * array)
{}

int main(void)
{
    int a;
    char arr[6][50];
    char arr2[][50]={"qweeeaa","bbbb","ffaa","eeaa","aaaa","ffaa"};

    for(a=0; a<6;a++)
    {
        strcpy(arr[a], arr2[a]);
    }

    func(arr);

    return 0;
}

我使用的是MinGW GCC 4.8.1

您传递的类型与函数期望的类型不匹配。更改函数以接收指向数组的指针:

void func(char (*array)[50])
{

}
其他问题:

1您也没有为func声明原型。在C99之前的模式下,编译器会假设函数返回int,这会导致问题。 在C99和C11中,缺少原型会使代码无效。因此,要么在源文件顶部声明原型,要么将函数移到main之上


2为printf等包含适当的标题。

您传递的类型与函数期望的类型不匹配。更改函数以接收指向数组的指针:

void func(char (*array)[50])
{

}
其他问题:

1您也没有为func声明原型。在C99之前的模式下,编译器会假设函数返回int,这会导致问题。 在C99和C11中,缺少原型会使代码无效。因此,要么在源文件顶部声明原型,要么将函数移到main之上

2为printf等包括适当的标题。

[c]2D数组参数-我觉得难以置信,相信搜索不会产生有用的东西。[c]2D数组参数-我觉得难以置信,相信搜索不会产生有用的东西。