Ir ao conteúdo
  • Cadastre-se

duvida na mensagem de erro


pacheco492

Posts recomendados

ola amigos:

eu gostaria de saber por que meu programa esta dando erro

peguei esse programa no youtube e fui escrevendo-o passo a passo de acordo com as aulas do youtube

segue o link do youtube e o programa

erro:

'' [Linker error] undefined reference to `mostar' ''

#include<stdio.h>

#include<stdlib.h>

#include<conio.h>

typedef struct

{

char nome[20];

int codigo, tipo;

float area, condominio;

}tipo_shopping;

tipo_shopping shopping;

FILE *p_shopping;

void abre_arquivo(void)

{

p_shopping=fopen("shopping_center.bin","a+b");

}

void mostrar(void)

{

printf("\n%6d %-13s %4.2f %4d %10.2f", shopping.codigo, shopping.nome, shopping.area, shopping.tipo, shopping.condominio);

}

float condominio2(int t_tipo, float t_area)

{

switch(t_tipo)

{

case 1: return t_area*50; break;

case 2: return t_area*65; break;

case 3: return t_area*80; break;

case 4: return t_area*95; break;

}

}

void procurar(int cod)

{

rewind(p_shopping);

do

{

fread(&shopping, sizeof(tipo_shopping), 1, p_shopping);

if(cod == shopping.codigo) mostrar();

}while( (feof(p_shopping)==0) && (cod != shopping.codigo));

if(cod != shopping.codigo) printf("\n\nloja nao cadastrada");

}

void cadastrar(void)

{

int continuar;

do{

system("cls");

printf("\t\tcadastro");

printf("\n\nshopping center");

printf("\n\ncadastro de loja");

printf("\n\ncodigo: ");

scanf("%d",&shopping.codigo);

printf("\nnome: ");

fflush(stdin);

gets(shopping.nome);

printf("\narea: ");

scanf("%f",&shopping.area);

printf("\ntipo(1-confeccoes, 2-alimentacao, 3-livros, 4-servicos): ");

shopping.condominio=condominio2(shopping.tipo, shopping.area);

%2

Link para o comentário
Compartilhar em outros sites

Aproposito, uma dica pra esse video : o scanf pode SIM ler além do espaço, só precisa configura-lo corretamente :

scanf("%50[^\n]", string);/*nessa linha o scanf lê no maximo 50 caracteres, e continua lendo enquanto não encontre um enter, ou em linguagem C, um '\n'*/

Além disso, o gets() é desaconselhavel. SEMPRE.

Pode-se usar o scanf configurado da forma como mostrei antes ou o fgets(), lendo do stdin.

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!