• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

mbalves

warning: initialization from incompatible pointer type

2 mensagens neste tópico

Boas,

Eu tenho a seguinte estrutura num header file :

typedef struct qtnode {
    struct QTnode *firstChild; 
    struct QTnode *secondChild;
    struct QTnode *thirdChild;
    struct QTnode *fourthChild;
    int xMin;
    int xMax;
    int yMin;
    int yMax;
    List l; //Lista de Rectangulos inseridos no nó

} QTNODE,*QuadTree;

No respectivo ficheiro c eu estou a construir uma função onde pretende preencher uma quadtree:

void genQuadTree(List lRect, int xMinimum, int xMaximum, int yMinimum,
	int yMaximum) {

QuadTree q = malloc(sizeof(QTNODE));

QTNODE *qFirst = q->firstChild;
QTNODE *qSecond = q->secondChild;
QTNODE *qThird = q->thirdChild;
QTNODE *qFourth = q->fourthChild;

o problema é que o compilador diz me que "QuadTree.c:70: warning: initialization from incompatible pointer type" que corresponde aquelas ultimas 4 linhas de codigo. Se me pudessem ajudar a descobrir como poderia resolver o erro agradecia bastante.

cumprimentos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Como não estás a fazer casting do resultado do malloc para QuadTree, ele devolve void*, que é incompatível com QuadTree.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora