Ou est l'erreur ?
datamakememade
-
sayrus86 -
sayrus86 -
Bonjour,voici un code pr comparer deux chaines:
#include<stdio.h>
#include"myString.h"
int main (){
char* str1;
char* str2;
char result;
printf("Enter string1:\n");
scanf("%s",str1);
printf("Enter string2:");
scanf("%s",str2);
result=myStrCmp(str1,str2);
if(result==1)
printf(" same");
else
printf(" different");
}
int myStrCmp(char* str1, char* str2){
int i;
if (myStrLen(str1) - myStrLen(str2))
return(1);
for ( i = 0 ; i < myStrLen(str1) ; i++ ) {
if (*(str1+i) - *(str2+i))
return(1);
}
return(0);
}
le programe menvoi un message d"erreur aprés avoir enter la deuximém chaine et se ferme ....
#include<stdio.h>
#include"myString.h"
int main (){
char* str1;
char* str2;
char result;
printf("Enter string1:\n");
scanf("%s",str1);
printf("Enter string2:");
scanf("%s",str2);
result=myStrCmp(str1,str2);
if(result==1)
printf(" same");
else
printf(" different");
}
int myStrCmp(char* str1, char* str2){
int i;
if (myStrLen(str1) - myStrLen(str2))
return(1);
for ( i = 0 ; i < myStrLen(str1) ; i++ ) {
if (*(str1+i) - *(str2+i))
return(1);
}
return(0);
}
le programe menvoi un message d"erreur aprés avoir enter la deuximém chaine et se ferme ....
4 réponses
Salut,
Pour commencer tu n'as pas allouer de la mémoire pour tes pointeurs
Pour commencer tu n'as pas allouer de la mémoire pour tes pointeurs
datamakememade
ou ca dan la main fucntion ?? j'ai pas compri ...késk je devré faire?
Quel message d'erreur?
ensuite cette ligne ne sers a rien:
if (myStrLen(str1) - myStrLen(str2))
et enfin tu declare ton result en char et tu t'en sers comme d'un int!
ensuite cette ligne ne sers a rien:
if (myStrLen(str1) - myStrLen(str2))
et enfin tu declare ton result en char et tu t'en sers comme d'un int!