Leerzeilen im eingegebenen Text entfernen C?

... komplette Frage anzeigen

3 Antworten

Wenn du nur eins von "\\r" (13) und "\\n" (10) als Zeilenendezeichen hast, reicht nach dem Einlesen des Zeilenendezeichens eine einfache do-while-Schleife, die solange immer das nächste Zeichen einliest, bis es ein anderes als das Zeilenendezeichen ist. (Zusätzliche Abbruchbedingungen natürlich \\0 und \\4.)

Oder besser wohl ein

if (c == "\\r") continue;

Bei "\\r\\n" als Zeilenumbruch müsstest du, nachdem du ein Zeilenende erreicht hast, vermutlich die Zeichen paarweise einlesen und die letzten beiden Zeichen mit "\\r\\n" vergleichen.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von onurlu66
19.04.2016, 16:34

Ich habe keine Ahnung wie du das meinst. Könntest du mir da ein Beispiel geben wie das aussieht?

0

Hallo!

Du meinst sicher "Leerzeichen", also

Schema:

char zch;
do {
zch = stdin(1Zeichen);
if ( zch == ' ')
    { ** nothing **}
else { stdout = zch; }
} while(char=STRG-D)

So sieht der Programmablauf aus, in c habe ich schon lkange nichts mehr geschrieben, deswegen weiss ich die Syntax nicht.

Gruß

Antwort bewerten Vielen Dank für Deine Bewertung

leerzeilen kann man in anderen sprache mittels trim() entfernen, wie das bei c ist weiß ich nicht

Antwort bewerten Vielen Dank für Deine Bewertung