Ir para conteúdo

POWERED BY:

Arquivado

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

Vilarim

[Resolvido] Redefinition of 'main'

Recommended Posts

Pessoal podem me ajudar com um erro bobo q esta dando no meu programa... Vou postar um pedaço dele.

 

E tbm possuo uma duvida.

Vou ter q cadastar (usando struct) os alunos pelos: Ra, nome e curso... mas quando o usuario digitar o RA , o sistema deve varificar se ja existe esse RA e se existir avisar o usuario. Como faço essa comparação de struct.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 9
#define MIN 9
#define TAM 100

        struct aluno //estrutura do tipo aluno
              {
              long  ra[MAX][MIN];
              char nome[50];
              char curso[25];
              }; //fim do struct
        
        struct aluno regaluno[100]; // uma matriz de estrutura tipo aluno realuno
        
int menu();
void CADASTRO(void);
void CONSULTA(void);
void EXCLUIR(void);


int continuar;
int cont=0;

int main() // inicio do int main()
 {

int opcoes;

do {
    opcoes=menu(); //chama a opção menu
    
    switch (opcoes){
    case 1:
         CADASTRO();
         break;
    case 2:
         CONSULTA();
         break;
    case 3:
         EXCLUIR();
         break;
    case 4:
         exit(0);
         break;
                 }// fecha o switch      
         
  }// fecha DO
  while (opcoes !=4);
  
   printf("\n\n");
   return(0);
}  // fim do int main();

int main(void) // função do menu
{ // é bem aqui q esta dando o erro aparece:  redefinition of 'int main'
    int x; // vai ler as opções
    
    do {
        
        system("cls"); // limpa a tela
        printf("\n\n"); // pula duas linhas
        
        printf(" \t\t 1 %c CADASTRO DE ALUNO \n\n\t\t 2 %c CONSULTA \n\n\t\t 3 %c EXCLUIR \n\n\t\t 4 %c Sair");
        scanf("%d".&x);
        
      }// fecha  DO
      while ((x<1) || (x>4));
      
return x;

}// fecha int main(void)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você fala inglês?

O que o erro significa pra você?

 

Traduzindo "redefinition of 'int main()'" para português fica: redefinição de 'int main()'

A mensagem de erro é bem auto-explicativa, e nela diz que você tem duas definições da função main...

Realmente é o que se verifica no seu código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

É o que o amigo aí de cima falou, você está usando 2 funções com o mesmo nome, só renomear ela:

 

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 9
#define MIN 9
#define TAM 100

        struct aluno //estrutura do tipo aluno
              {
              long  ra[MAX][MIN];
              char nome[50];
              char curso[25];
              }; //fim do struct
        
        struct aluno regaluno[100]; // uma matriz de estrutura tipo aluno realuno
        
int menu();
void CADASTRO(void);
void CONSULTA(void);
void EXCLUIR(void);


int continuar;
int cont=0;

int main() // inicio do int main()
 {

int opcoes;

do {
    opcoes=menu(); //chama a opção menu
    
    switch (opcoes){
    case 1:
         CADASTRO();
         break;
    case 2:
         CONSULTA();
         break;
    case 3:
         EXCLUIR();
         break;
    case 4:
         exit(0);
         break;
                 }// fecha o switch      
         
  }// fecha DO
  while (opcoes !=4);
  
   printf("\n\n");
   return(0);
}  // fim do int main();

int menu(void) // função do menu
{ 
    int x; // vai ler as opções
    
    do {
        
        system("cls"); // limpa a tela
        printf("\n\n"); // pula duas linhas
        
        printf(" \t\t 1 %c CADASTRO DE ALUNO \n\n\t\t 2 %c CONSULTA \n\n\t\t 3 %c EXCLUIR \n\n\t\t 4 %c Sair");
        scanf("%d".&x);
        
      }// fecha  DO
      while ((x<1) || (x>4));
      
return x;

}// fecha int menu(void)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.