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

bertolo

warnings a mais

8 mensagens neste tópico

boas ppl , tenho um projecto feito por modulos e akilo senao tiver os includes em todos os ficheiros da warnings q nunca mais acaba.

gostava tb de saber onde e que tenho de declarar uma estrutura de maneira a n ter problemas.

cumps []

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

se usas uma estrutura num módulo precisas de fazer o include do .h onde ela está definida.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Acho que o problema dele é ter o mesmo include várias vezes.

Eu faço um ficheiro .h com todos os tipos de dados a declarar (estruturas, constantes, tipos enumerados, ...) e tudo o que é biblioteca do próprio c faço o include só no ficheiro .c que estou a compilar antes dos includes de outros ficheiros criados por mim.

Não sei se alguém tem uma maneira mais funcional

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

esse problema de vários includes normalmente resolve-se com macros.

#ifndef _BIBLIOTECA_
#define _BIBLIOTECA_

...

#endif

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

qd tenho a estruura defenida no ...h entao e que da warnings de mais....optei evitar passar estruturas para funçoes e fico com mt menos warns

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

isso é porque tinhas os ficheiros mal organizados.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Deves ter as declarações antes das definições.

Tipo um include de um ficheiro .h com as funções que utilizam as estruturas antes do include do ficheiro que define as estruturas

Penso eu  :hmm:

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