Ir para conteúdo
Fórum Script Brasil
  • 0

função para validar e-mail passado como argumento


4ng3lo

Pergunta

Boa tarde a todos.

Estou com dificuldade para terminar esta função. O problema está no loop dentro do 'if', em particular com a função strcat(), pois ela serve para concatenar duas string, e o que quero é concatenar caracteres, um a um, em uma string(variável e_mail), e em seguida comparar a variável 'e_mail' com as constantes correspondentes aos e-mails(@hotmail.com, etc...).

Desde já agradeço a atenção!

Segue o código:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int validarEmail(const char *email){
	int cont;
	int validado = 0;
	char e_mail[14];
	const char* hotmail   = "@hotmail.com";
	const char* yahoomail = "@yahoo.com.br";
	const char* gmail     = "@gmail.com.br";

	e_mail[0] = '@';

   	 for(cont = 0; cont < strlen(email); cont++){
       		 if(email[cont] == '@'){
           		 for(int cont2 = cont + 1; cont2 < strlen(email); cont2++){ 
				 strcat(e_mail, email[cont2]);
			 }

			 if(!strcmp(e_mail, hotmail) ||
			    !strcmp(e_mail, yahoomail) ||
			    !strcmp(e_mail, gmail)){
			 	validado = 1;

				break;
			 }			 
       		 }
   	 }

    return validado;
}

void clearBuffer(void){
	char ch;

	while((ch = getchar()) != '\n' && ch != EOF){}
}

int main(void){
    char email[20];
    
    system("clear");

    do{
	printf("Digite seu e-mail: ");
	fgets(email, 20, stdin);

	clearBuffer();
    }while(!validarEmail(email));

    return 0;
}

 

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...