Ir ao conteúdo

C Erro em função com strlen como solucionar?


Ir à solução Resolvido por guhbrj,

Posts recomendados

Postado

Estou desenvolvendo um sistema para controle da uma palestra(trabalho da faculdade), e criei uma função para fazer uma verificação de e-mail bem simples com os principais domínios. Estou usando o DEVC++, e gostaria de saber o porque está parecendo os erros(deixarei no final da pergunta) e como poderia solucionar eles.

 

void verificaEmail (){ /*Função de verificação de e-mail*/
  char email [ 50 ], dominio [ 10 ];
  
  scanf ( "%s", email );

  char provedor [ 11 ];

  int i, j;

  for ( i = strlen ( email ) - 10, j = 0; j < 10; j++, i++ ) //strlen-> conta quantos caracteres tem na string
     {
        provedor [ j ] = email [ i ];
     }

  if ( strcmp ( provedor, "@gmail.com" ) == 0 )
    {
       printf ( "Email valido.\n" );
    }else
 if ( strcmp ( provedor, "@uol.com" ) == 0 )
    {
       printf ( "Email valido.\n" );
    }else
 if ( strcmp ( provedor, "@yahoo.com" ) == 0 )
    {
       printf ( "Email valido.\n" );
    }else
 if ( strcmp ( provedor, "@outlook.com" ) == 0 )
    {
       printf ( "Email valido.\n" );
    }else
 if ( strcmp ( provedor, "@icloud.com" ) == 0 )
    {
       printf ( "Email valido.\n" );
    }
else
    {
       printf ( "Email invalido.\n" );
    }
}

 

 

 

O programa roda tranquilo, porém ele aparece essas mensagem aqui:

In function 'verificaEmail':

Warning] incompatible implicit declaration of built-in function 'strlen'

 

 

Estou usando as bibliotecas:

#include <stdio.h>
#include <time.h>
#include <conio.h>
#include <stdlib.h>

 

  • Obrigado 1
  • Solução
Postado
4 horas atrás, Ricksoz disse:

Estou desenvolvendo um sistema para controle da uma palestra(trabalho da faculdade), e criei uma função para fazer uma verificação de e-mail bem simples com os principais domínios. Estou usando o DEVC++, e gostaria de saber o porque está parecendo os erros(deixarei no final da pergunta) e como poderia solucionar eles.

 


void verificaEmail (){ /*Função de verificação de e-mail*/
  char email [ 50 ], dominio [ 10 ];
  
  scanf ( "%s", email );

  char provedor [ 11 ];

  int i, j;

  for ( i = strlen ( email ) - 10, j = 0; j < 10; j++, i++ ) //strlen-> conta quantos caracteres tem na string
     {
        provedor [ j ] = email [ i ];
     }

  if ( strcmp ( provedor, "@gmail.com" ) == 0 )
    {
       printf ( "Email valido.\n" );
    }else
 if ( strcmp ( provedor, "@uol.com" ) == 0 )
    {
       printf ( "Email valido.\n" );
    }else
 if ( strcmp ( provedor, "@yahoo.com" ) == 0 )
    {
       printf ( "Email valido.\n" );
    }else
 if ( strcmp ( provedor, "@outlook.com" ) == 0 )
    {
       printf ( "Email valido.\n" );
    }else
 if ( strcmp ( provedor, "@icloud.com" ) == 0 )
    {
       printf ( "Email valido.\n" );
    }
else
    {
       printf ( "Email invalido.\n" );
    }
}

 

 

 

O programa roda tranquilo, porém ele aparece essas mensagem aqui:

In function 'verificaEmail':

Warning] incompatible implicit declaration of built-in function 'strlen'

 

 

Estou usando as bibliotecas:


#include <stdio.h>
#include <time.h>
#include <conio.h>
#include <stdlib.h>

 

Tente inserir a biblioteca #include<string.h> essa função pertence à esta biblioteca.

  • Curtir 1
  • Amei 1

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