Ich versuche, eine Zeichenfolge in Slice zu schneiden und dieses neue geschnittene Teil zu kopieren.Schneiden und Kopieren einer Zeichenfolge in C
char* makeWord(char *c, int j, int i){
char *s;
s = malloc(sizeof(char)*i-j)
int k;
for (k = 0; k < i - j; k++){
s[k] = c[j+k];
}
printf("%s ", s);
return s;
}
Ich versuche, einen Zeiger zurückzugeben, der den relevanten Teil der ursprünglichen Zeichenfolge kopiert.
Es ist am Ende seltsame Symbole drucken.
Beispiel:
c[] = "hello darkness my old friend"
makeWord(c, 0, 5); makeWord(c, 6,14); makeWord(c, 15, 17); makeWord(c, 18, 21);
Generiert: hallo darknessmt_'3 Myp alt friendP
Danke, sorry für den Neuling Frage.
Was Strings mit enden? Dein 's' fehlt etwas. – user2357112
'sizeof (char)' ist redundant, da es immer eine –
ist, die sinnvollere Variablennamen als 'i' und' j' verwenden. –