2014-11-22 73 views
1

我是C編程中的新手,我已經在stackoverflow和其他網站上關於此警告進行了研究,但他們不是我的問題的答案。我有一個結構類似:警告:從結構體中的2d指針指派不兼容的指針類型

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; 

}; 

每當我加入了二維數組,resArr和wholeImage,我在這裏這樣的警告:

pr.resArr=ran; 

pr.wholeImage=wholeImage; 

我有如下定義的公式:

struct threadParams pr; 

這些都是在我初始化的地方跑去,wholeImage:

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

是否有與在結構二維數組的任何問題?我該如何處理這個問題?

感謝

+0

大概'ran'不是指針的指針......也許您正在使用指針數組混合起來 – 2014-11-22 12:16:11

回答

1

請強制轉換您的任務:

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