Zeichen aus string löschen.
-
void loesche_zeichen(char * kette, char zeichen)
{
//hier soll die Funktion geschrieben werden
}
int main(void)
{
char zeichenkette[LAENGE + 1], zeich_loesch;printf("Geben Sie eine Zeichenkette (max. %d Zeichen) ein:\n", LAENGE);
fgets(zeichenkette, LAENGE, stdin);printf("\nGeben Sie das zu loeschende Zeichen ein: ");
zeich_loesch = getchar();loesche_zeichen(zeichenkette, zeich_loesch);
printf("\nDie neue Zeichenkette ist dann:\n");
printf("%s\n", zeichenkette);
return (0);
-
Willste eine komplett Lösung?
Dann meld dich im Forum Projekte.Willste hilfe?
Dann sag uns mal, was du dir überlegt hast.
-
Ich wollte den String durchsuchen, bei gefundenem Zeichen praktisch die folgezeichen nach vorn rücken/kopieren. Den Stringpuffer brauch ich ja dann nicht löschen?!?! lediglich am Ende ein \0 anfügen, oder?
-
Nein.
Aber dein Einsatz ist richtig.
Schreib als erstes die Suche.
Dann rückst du die Zeichen nach vorne.
Wenn du Probleme hast, fragst du.
-
lediglich am Ende ein \0 anfügen, oder?
am Ende ist eh schon eine '\0', die brauchst du ja nur mit nach vorn zu rücken