Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Maycon Guedes

Problema com NULL e ponteiros quando uso métod

Recommended Posts

Queria saber porque o código abaixo não compila, se remover a parte que testa se o ponteiro é nulo em metodos.c o código compila normalmente... porem... porque não consigo testar se o ponteiro é nulo dentro deste método???

 

 

tipos.h

typedef struct{         int elemento;         struct Celula *anterior;         struct Celula *proxima;    }Celula;
metodos.c
#include "tipos.h" void ddd(Celula *C){      printf("%d\n",C);      printf("%d\n",C->elemento);      if(C->anterior == NULL){         printf("NULL\n");            }else{                  printf("não E NULL\n");      }}

 

main.c

#include <stdio.h> #include <stdlib.h> #include "tipos.h" int main(){     Celula *C;     C = malloc(sizeof(Celula));     C->elemento = 1;     C->anterior = NULL;     C->proxima = NULL;     printf("%d\n",C);     printf("%d\n",C->elemento);     if(C->anterior == NULL){         printf("NULL\n");     }else{         printf("não E NULL\n");     }          ddd©;     system("PAUSE");     return 0; }

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

'NULL' é uma constante declarado dentro da biblioteca padrão do C(stdlib).

 

Como teu arquivo fonte "tipos.c" não inclui a sdtlib, o compilador acusa o erro.

 

 

tipos.c:6:25: erro: ‘NULL’ undeclared (first use in this function)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.