Colocar Resposta 
 
Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
problemas funçoes e estruturas
26-11-2010, 01:12 (Esta mensagem foi modificada pela última vez a: 26-11-2010 01:26 por champion87.)
Mensagem: #1
problemas funçoes e estruturas
boas pessoal

eu estou a começar nestas cenas de linguagem c e estou com um grave problema.

o problema e o seguinte: quero por a seguinte funçao a fincionar mas nao faço a minima ideia como. aqui esta o codigo:
Código:
Código:

#include <stdio.h>
#include <stdlib.h>
struct Data{
        int mes, ano, dia;
        }data;

struct Gestao{
        char matricula[10];
        int classe;
        float horaEntrada;
        float horaSaida;
        struct Data data;
        };
void registar(struct Gestao, struct Data data){
       printf("Introduza a matricula do veiculo: ");
       gets(matricula);
       printf("\nIntroduza a classe do veiculo: ");
       scanf("%d", &classe);
       printf("introduza o ano: ");
       scanf("%d", &ano);
       printf("introduza o mes: ");
       scanf("%d", &mes);
       printf("introduza o dia: ");
       scanf("%d", &dia);
       printf("introduza a hora de entrada (hora.minutos)");
       scanf("%f", &horaEntrada);



}

void main()

{
    registar(Gestao,Data data)
    return 0;
}
se me poderem ajudar agradecia bastante.
um abraço


por favor ajudem-me ja estou a dois dias nisto e foi o melhor que consegui
por favor ajudem-me ja estou a dois dias nisto e foi o melhor que consegui
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
26-11-2010, 12:09
Mensagem: #2
RE: problemas funçoes e estruturas
O meu C está um pouco enferrujado, mas ajudava dizeres o erro que te aparece.

BrunoBernardino.com
Visitar Website de este utilizador Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
26-11-2010, 13:20 (Esta mensagem foi modificada pela última vez a: 26-11-2010 13:21 por Corvus.)
Mensagem: #3
RE: problemas funçoes e estruturas
Assim de repente, vejo vários problemas:

1) A função registar() não define nenhuma variavel para receber o 1o parametro (struct Gestao)

2) Dentro da função registar(), os valores são lidos para variáveis (não inicializadas) em vez de para os membros das estruturas passadas como parametro

3) Na função main(), estás a chamar a função registar() com o nome do tipo do 1o parametro em vez de com uma variável para recolher os valores.

Uma das tuas dificuldades parece ser acederes aos membros de uma estrutura.

Tendo a seguinte estrutura

Código:
struct Exemplo {
   int membro1;
   int membro2;
};

e tendo uma variavel desse tipo:

Código:
struct Exemplo var1;

A maneira de aceder aos membros da estrutura é usar o .

Código:
var1.membro1 = 12;

if (var1.membro2 == 34) {
   var1.membro2 = 42;
}


Se estiveres a lidar com ponteiros para uma estrutura:

Código:
struct Exemplo *ptr1;

então a maneira de aceder aos membros é por -> em vez de .

Código:
ptr1->membro1 = 12;

if (ptr1->membro2 == 34) {
   ptr1->membro2 = 42;
}

Nota: Não me referi à alocação da variavel quando usas ponteiros... Isso são outras núpcias.

Espero que isto te ajude a avançar um bocado.

Pedidos de ajuda via PM serão ignorados
Acordo ortográfico? Desconheço, obrigado Wink
Agradeço ao Chrome o facto de os meus posts nao terem acentos Evil
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
Colocar Resposta 


Saltar Fórum:


Utilizadores a ver este tópico: 2 Visitante(s)