2013-05-20 3 views
0

내 코드에서 내가 가진 :GCC 경고 : 호환되지 않는 포인터 타입

char DRAW_EX[DRAW_HEIGHT][DRAW_WIDTH] = { 
     "*  *", 
     " * * ", 
     " * ", 
     " * * ", 
     "*  *" 
      }; 
char DRAW_CIRCLE[DRAW_HEIGHT][DRAW_WIDTH] = { 
     " *** ", 
     " * * ", 
     "*  *", 
     " * * ", 
     " *** " 
      }; 
char DRAW_EMPTY[DRAW_HEIGHT][DRAW_WIDTH] = { 
     "  ", 
     "  ", 
     "  ", 
     "  ", 
     "  " 
      }; 

그리고 나에게 경고를주는 선 것은 :

char** leftDraw; 
leftDraw = board[i][0]==EMPTY?DRAW_EMPTY:(board[i][0]==SHAPE_O?DRAW_CIRCLE:DRAW_EX); 

경고는 다음과 같습니다

warning: assignment from incompatible pointer type [enabled by default] 

내가 도대체 ​​뭘 잘못하고있는 겁니까?

+2

포인터가 배열이 아닙니다. 두 가지 유형입니다. 하나는 다른 척하는 척 할 수 없다. – chris

+0

문제를 재현하는 코드를 제공하지 않는 이유는 무엇입니까 ('board' 선언') 등 ... –

답변

5

내가 뭘 잘못하고 있니?

char**에 할당하려고합니다. 이들은 호환되지 않는 유형입니다.

선언

char (*leftDraw)[DRAW_WIDTH]; 

및 컴파일러는 그 라인에 만족하실 것입니다.