警告:由结构中的2d指针从不兼容的指针类型分配

时间:2014-11-22 12:12:50

标签: c arrays struct multidimensional-array

我是C编程的新手,我已经在stackoverflow和其他网站上研究了这个警告,但它们不是我问题的答案。我有这样的结构:

struct threadParams{
    FILE *ptr_myfile;
    FILE *ptr_outputfile;
    int* myArr;
    int height;
    int width;
    int rowStart;
    int colStart;
    int im_height;
    int im_width;
    int** resArr;
    int* windows;
    unsigned char** wholeImage;

};

每当我添加2d数组,resArr和wholeImage时,我都会收到此警告:

pr.resArr=ran;

pr.wholeImage=wholeImage;

我已经定义了这样的:

struct threadParams pr;

这些是我初始化ran和wholeImage的地方:

int ran[height][width];
unsigned char wholeImage[im_height][im_width];

结构中的2d数组有问题吗?我该如何处理这个问题?

由于

1 个答案:

答案 0 :(得分:1)

请指定您的作业:

pr.wholeImage=(unsigned char **)wholeImage;
pr.resArr=(int **)ran;