내 코드에 대한 경고를 이해하지 못합니다. 그것은 단순 해 보이지만 나는 그것을 얻지 못한다. 나 이전에 의해 정의 된 구조체호환되지 않는 포인터 유형에 대한 경고
chunk* findChunk(chunk *ptr, int size)
{
...
chunk *newNode = ptr->end + size;
...
}
덩어리입니다 : 여기에 코드의 문제가있는 부분은
typedef struct chunk
{
int size;
int available;
struct chunk* next;
char end[1];
} chunk;
가 그리고 이것은 경고이다 나는 나타납니다
warning: initialization from incompatible pointer type [enabled by default]<br>
chunk *newNode = ptr->end + size;
난 못해 uderstand, 나에게 분명히 newNode와 ptr은 같은 타입이다. 내가 뭘 놓치고 있니? 고마워.
'newNode'와'ptr'는 같은 타입이지만 'ptr-> end + size' ('ptr-> end'와 같은 타입입니다)는'char *'타입입니다. – mafso