Ir ao conteúdo
  • Cadastre-se

C comparando string usando ponteiro


paulo leal

Posts recomendados

Estou fazendo um programa para compara duas strings mas sem usar a função strcmp da biblioteca string. Eu tenho que fazer essa função usando ponteiro mas meu código esta dando um erro que eu não sei resolver 

#include <stdio.h>

int strcmp(const char* s1; const char* s2);

int main (){
	char* s1="abcde";
	char* s2="ABCDE";
	
	if(strcmp(s1,s2)==0){
		printf("As duas strings sao iguais\n");
	}else{
		printf("As duas strings sao diferentes\n");
	}
	
	
}
int strcmp(const char* s1, const char* s2)
{
  for ( ; *s1 == *s2; ++s1, ++s2) {
    if (*s1 == '\0') {
      return 0;
    }
  }
  if (*s1 < *s2) {
    return -1;
  }
  else {
    return +1;
  }
}

obs: estou começando agora a mexer em ponteiros. 

 

estes são os erros que aparecem no compilador DEV-C++

 

3    24    G:\atividade 06\questão 05.c    [Error] parameter 's1' has just a forward declaration

3    5    G:\atividade 06\questão 05.c    [Warning] conflicting types for built-in function 'strcmp'

G:\atividade 06\questão 05.c    In function 'main':

9    5    G:\atividade 06\questão 05.c    [Error] too many arguments to function 'strcmp'

3    5    G:\atividade 06\questão 05.c    [Note] declared here

G:\atividade 06\questão 05.c    At top level:

17    5    G:\atividade 06\questão 05.c    [Error] conflicting types for 'strcmp'

3    5    G:\atividade 06\questão 05.c    [Note] previous declaration of 'strcmp' was here

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

[3][Error] parameter 's1' has just a forward declaration

    Esse é porque voce colocou ponto-virgula no lugar de virgula.

int strcmp(const char* s1; const char* s2);

~~~~~~~~~~~~~~~~~~ ^  

Erro: parâmetro 's1' está com indicado de fim de declaração.

 

[2][Warning] conflicting types for built-in function 'strcmp'

    Esse 'erro' porque os parâmetros são const e os argumento não const.

    Isso não é um erro, isso é uma alerta que nesse caso não tem problema algum.

 

Eu acho que os demais erros advém destes 2.

Ps.: Melhor IDE que exite para C é o bloco de notas :P

Antes usei o Code Blocks, porém agora uso bloco de notas.

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

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!