Ir ao conteúdo
  • Cadastre-se

C++ Erro ao chamar a função de cadastro


Ulbach

Posts recomendados

Boa Tarde,

Pessoal

 

Sou novato em programação em C++ e estou com um erro em meu código:

*** Erro ao chamar a função de cadastro no MENU principal.

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
#include <string.h>
#define SIZE 500


/* DEV C++ Versão 5.10*/


typedef struct stcliente{/*Estrutura Clientes*/
char client[SIZE][80];
char endereco[SIZE][100];
char bairro[SIZE][80];
char cep[SIZE][9];
char cidade[SIZE][80];
char estado[SIZE][2];
int telefone [SIZE][15];
char email[SIZE][30];
int idade[SIZE][3];
char gdhumanos[SIZE][5];
int cpf[SIZE];

}sscad[SIZE];

typedef struct stveiculo{/*Estrutura Veiculos*/

char veiculo[SIZE][40];
char cor[SIZE][20];
char modelo[SIZE][40];
char marca[SIZE][30];
char ano[SIZE][4];
char placa[SIZE][8];
int vdiaria[SIZE];

}vvcad[SIZE];

/* Ptototipos das Funções*/
void listagem();
int menu;
struct stcliente Dados();

/*Vetores*/
int i;
struct stcliente clientes[SIZE];
char vclientes =0;

struct stveiculo veiculos[SIZE];
int cveiculos =0;


/*Funções de Cadastro de Clientes*/
void cadastro( struct stcliente cliente){/*Prototipação de Função*/
    clientes[vclientes] = cliente;
    vclientes++;
}
/*Funções de Cadastro de Veiculos*/
void stveiculo (struct stveiculo Carro){
    veiculos[cveiculos] = Carro;
    cveiculos++;
}

int main(void){
    int menu;

    do
    {   if (menu <0 || menu > 6)

    system ("color 1F");
    //Declaração de Variáveis
    int Qtde, i, Media;
    double x=0;
    int Mat1[100], Mat2[100], Mat3[100], Mat4[100], Mat5[100];
    char Nome[100][100];

    for(; ;)
 {
 printf("\t\n\n**********************************\n\tLegal Rent a Car\n**********************************\n\n\n");
    printf("\tMENU PRINCIPAL\n [1] - CADASTRO DE CLIENTES\n [2] - CADASTRO DE VEICULOS\n [3] - LOCACAO\n [4] - DEVOLUCAO\n [5] - PESQUISA DE CLIENTES\n [6] - PESQUISA DE VEICULOS\n\n [0] - SAIR\n");
    printf("\n\nEscolha uma opcao: ");
    scanf("%d", &menu);

    switch(menu){

     case 1: stcliente(vclientes);

        system("cls");
        break;


  case 0:
         printf("\t\n-----------------------------------------------------------\nOBRIGADO PELO preferência!!!\n-----------------------------------------------------------\t\n");
            system("pause");
   system("cls");
   break;
            default:
            printf("\t\nVoce digitou uma opcao INVALIDA! Tene Novamente.\n\n\n\t\a\a");
            system("pause");
            system("cls");

            }

   while(menu < 0 || menu > 6);

            exit(0);
}
getchar();
}

struct stcliente Dados(){/*Cadastro de Clientes*/
    struct stcliente vclientes;

        system("cls");
        printf("\n\n**********************************\n\tLegal Rent a Car\n**********************************\a\n\n");
        printf("\nCLIENTE....: ");
        scanf("%s", &vclientes.client);
        fflush(stdin);
        printf("ENDERECO...: ");
        scanf("%s", &vclientes.endereco);
        setbuf(stdin, NULL);
        /*printf("BAIRRO.....: ");
        scanf("%s", &bairro[cadcli]);
        fflush(stdin);
        printf("CEP........: ");
        scanf("%s", &cep[cadcli]);
        fflush(stdin);
        printf("CIDADE.....: ");
        scanf("%s", &cidade[cadcli]);
        fflush(stdin);
        printf("ESTADO.....: ");
        scanf("%s", &estado[cadcli]);
        fflush(stdin);
        printf("TELEFONE...: ");
        scanf("%d", &telefone[cadcli]);
        fflush(stdin);
        printf("E-MAIL.....: ");
        scanf("%s", &email[cadcli]);
        fflush(stdin);
        printf("IDADE......: ");
        scanf("%d", &idade[cadcli]);
        fflush(stdin);
        printf("GRUPO DIREITOS HUMANOS...: ");
        scanf("%s", &gdhumanos[cadcli]);
        fflush(stdin);*/
        printf("CPF......: ");
        scanf("%d", &vclientes.cpf);
        fflush(stdin);
        printf("\n\nPara continuar cadastrando digite 1 !!!\n");
        printf("Ou ZERO para SAIR !!!\n");
        scanf("%d", &vclientes);

        while(vclientes!=0);

        exit(0);
getchar();

}

 

Link para o comentário
Compartilhar em outros sites

     case 1: stcliente(vclientes);
        system("cls");
        break;

Você usou a struct - stcliente - no lugar da função cadastro.

--

Aqui também:

char vclientes =0;

 

Não use char, use int.

Char é apenas para caracteres...Mesmo que tenham o mesmo valor numérico.

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...