donc je pratiquais l'écriture de code c avec des pointeurs en utilisant le K & R. Pour un problème avec strcat fonction, je ne pouvais pas savoir ce qui ne va pas avec mon code qui, selon Visual Studio , retourné la chaîne de destination inchangée après la fonction strcat. Toute suggestion est appréciée!implémentation simple strcat avec des pointeurs
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int strcat(char* s, char* t);
int main(void)
{
char *s="hello ", *t="world";
strcat(s,t);
printf("%s",s);
return 0;
}
int strcat(char* s,char* t)
{
int i;
i=strlen(s)+strlen(t);
s=(char*) malloc(i);
while(*s!='\0')
s++;
while('\0'!=(*s++=*t++))
;
return 0;
}
Vous réaffectez la chaîne 's' dans la fonction' strcat', perdant le contenu original. – vidit
'char * strcat (char * d, char const * s) {strcpy (d + strlen (d), s); retour d; } ' –