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


Anmelden zum Antworten