Olá galera, sou iniciante em C, e estou criando um projeto para a faculdade para criar um sistema em C que possa registrar equipes e fazer um ranking de acordo com os resultados de acordo com um campeonato que iremos participar.
Não consigo ver erros nesse código, e porém ao imprimir o ponteiro me retorna uns valores bizarros e não realmente o que está realmente alocado dentro do malloc em nomeEquipe.
o que estou fazendo de errado?
include
include
include
define MAX 10
struct lancamento{ char nomeEquipe[50]; int numeroTentativas; int distanciaAlvo; int situacao; };
struct sucesso{ char nomeEquipe[50]; int distanciaAlvo; int numeroTentativas; };
void cadastraEquipe(struct lancamento *equipes){ printf("INFORME O NOME DA EQUIPE: "); fflush(stdin); gets(equipes->nomeEquipe); equipes->numeroTentativas = 0; equipes->distanciaAlvo = 0; equipes->situacao = 0; }
void menu(){
int escolha, i, numEquipes; char ver_opt; struct lancamento *equipes;
equipes = (struct lancamento) malloc(sizeof(struct lancamento) MAX);
system("color F0"); printf("** MENU **\n"); printf(" \n"); printf(" [1] - CADASTRAR EQUIPES(MAX 10) \n"); printf(" [2] - LISTAR EQUIPES CADASTRADAS \n"); printf(" [5] - SAIR \n"); printf(" \n"); printf("** *\n");
printf("DIGITE A OPCAO: "); scanf("%d", &escolha);
switch (escolha) { case 1: system("cls"); for(i= 0; i<MAX;) { printf("REGISTRO DA EQUIPE:\n");
cadastraEquipe(&equipes); printf("DESEJA CADASTRAR OUTRA EQUIPE?: S/N?"); scanf("%c", &ver_opt); if((ver_opt =='N') || (ver_opt=='n')) { system("cls"); escolha = NULL; menu(); }else{ i++; } } break;
case 5: printf("OBRIGADO POR UTILIZAR NOSSO SISTEMA\n"); exit(1); break;
case 2: for(i = 0 ; i<MAX; i++) { printf("Nome da Equipe :%s\n", (*equipes).nomeEquipe);
} break;
default: printf("OPCAO INVALIDO\n"); system("pause"); system("cls"); return menu(); break; } }
int main(){
menu();
}