Jump to content
Sign in to follow this  
Krazzi

TAD

Recommended Posts

Krazzi

Boas. Tenho um problema com tipos abstractos de dados. Num programa que estou a tentar fazer ele nao consegue ir buscar uma variavel que se encontra num ficheiro.h . Como e que consigo fazer isso?

O exemplo e

no ficheiro.h

typedef struct docente

{

char Nome[MAX_CHAR];

char Email[MAX_CHAR];

nota avaliacao;

int Numero;

int numc;

}infoDocente, *apDocente;

no main.c

sscanf(line,"%c %d",&Nome,&Numero)!=ARG_USED

Ele diz que o Nome e Numero nao foi declarado.

Share this post


Link to post
Share on other sites
pedrosorio

E não foram. Não existem variáveis com esses identificadores. A estrutura que defines tem dois dos membros com esses nomes, mas não tens quaisquer variáveis assim definidas. Para fazeres o que queres no main.c terias que ter algo do género:

infoDocente prof1;
sscanf(line,"%s %d",prof1.Nome,&(prof1.Numero));

Repara: tens que declarar uma estrutura do tipo que queres. No sscanf tens que usar %s e não %c porque queres ler uma string, suponho. (E não precisas de & em prof1.Nome já que Nome é um apontador para o primeiro caracter do vector de caracteres).


Não respondo a dúvidas por mensagem.

Share this post


Link to post
Share on other sites
pedrosorio

Não. Quando defines uma estrutura estás apenas a definir um novo tipo de dados. Não estás a criar variáveis novas.

Eu estou a criar uma variável nova que é do tipo da estrutura que tu definiste e dá pelo nome de prof1.

Se calhar tens que rever as estruturas...


Não respondo a dúvidas por mensagem.

Share this post


Link to post
Share on other sites
pedrosorio

Só se quiseres ter uma função que crie docentes e usá-los depois fora da função. Isto porque, a partir do momento em que defines o que é aquela estrutura, podes declarar variáveis dela como se fossem de outro tipo qualquer.


Não respondo a dúvidas por mensagem.

Share this post


Link to post
Share on other sites
Krazzi

Eu tenho uma estrutura que define um so docente e outra o conjunto dos docente......entao prof1 e um docente e o teu infoDocente e o conjunto dos varios prof's certo?

Share this post


Link to post
Share on other sites
pedrosorio

Não. Aquando da definição da estrutura, ele fez dois typedefs.

- infoDocente que é o tipo da estrutura, ou seja, equivalente a struct docente

- apDocente que é o tipo de apontador para a estrutura, ou seja, equivalente a struct docente *

Eu limitei-me a declarar uma variável (chamada prof1) do tipo da estrutura, para lhe mostrar que precisava de ter uma variável para poder guardar o nome e o número.


Não respondo a dúvidas por mensagem.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.