Funktion Ein Zeichen ersetzten
-
Hallo,
habe das Beispiel zwar schon gelösst mit char *alt, char*neu. Würde es aber auch gerne hinbekommen wenn ich 2 chars übergebe.
void ersetze_zeichen(char *s,char alt,char neu) { int i = 0; while(s[i] == '\0') { if (s[i] == alt) { s[i] = neu; } i++; } } int main(void) { char feld[100] = ""; gets(feld); ersetze_zeichen(feld,'l','m'); printf("%s\n",feld); return EXIT_SUCCESS; }
Er ersetzt mir aber nicht die Zeichen.
-
Bullz schrieb:
Er ersetzt mir aber nicht die Zeichen.
Bau doch mal ein paar
printf()
ein, um zu beobachten, ob und wie Dein Algorithmus den String bearbeitet.
-
Der Computer macht, was du ihm sagst und nicht was du meinst.
Die Bedingung von der while-Schleife muss wahr sein, damit sie durchlaufen wird.
-
thx, hab mich vertan mit dem == und =!
while(s[ i ] != '\0') { if (s[ i ] == alt) { s[ i ] = neu; }