Ir ao conteúdo
  • Cadastre-se

Erro no código


Tathiane

Posts recomendados

Gente o negocio é o seguinte

estava eu montando um projeto da diciplina de estruruta de dados

um TAD fiz tudo direitinho so que esta dando erro no Main.c no "Numero"

socorre ai alguem please

Main Numero

#include<stdio.h>
#include<stdlib.h>
[B]#include"Numero.h"[/B]
int main (void)
{
Numero numeros;
Atribue(&numeros, 1, 0.25);
Copia(&numeros, numeros.numeroreal);
Imprime(numeros);
system("PAUSE");
return(0);
}

Numero.cpp

#include <stdio.h>
#include"Numero.h"

void Atribui(Numero*, int numero, double nimaginario){
Numero->numeroreal=numeroreal;
Numero->nimaginario=nimaginario;
}

void Copia(Numero* n, int numeroreal){
n->nimaginario = numeroreal;
}

void Imprime(Numero n){
printf("Numero 1: %d", n.numeroreal);
printf("Numero 1: %.2f", n.nimaginario);
}

Numero.h

// definição do tipo
typedef struct {
int numeroreal;
double nimaginario
} Numero;
// cabeçalho das funções
void Atribui (Numero*, int, double);
void Copia (Numero*, int);
void Imprime (Numero n);

Link para o comentário
Compartilhar em outros sites

em

typedef struct

{

int numeroreal;

double nimaginario

} Numero;

corrija para:

struct numero_complexo

{

int numeroreal;

double nimaginario;

} Numero;

erros:

se a linguagem é C você não precisa de typedef definir uma uma estrutura, mas precisa dar um nome a ela, no caso eu dei o nome de "numero_complexo", você precisa do nome da estrutura para declarar novas variáveis desse tipo;

você declara da seguinte maneira struct nome_da_estrutura nome_da_variavel

espero ter ajudado;

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

alfaallan, o typedef é justamente para não precisar usar a palavra "struct" na hora da declaração.

Tathiane, tem vários erros aí:

- Na main(), você tá chamando a função Atribue(), quando o certo é Atribui().

- Na função Atribui(), falta o nome do primeiro argumento (e consequentemente você terá que corrigir as atribuições dentro da função).

- Falta o ponto e vírgula na declaração do double dentro do scruct.

- No protótipo da Imprime(), não precisa usar o nome do argumento, só o tipo. Este não é bem um erro, só uma boa prática. ;)

Boa sorte!

Link para o comentário
Compartilhar em outros sites

Arquivado

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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!