cin.get(buf,n)
-
hallo,
mit dem Befehl kann ich ja in einen Buffer einlesen. Nun habe ich gelesen, dass da das Zeilenende Zeichen im Strom verbleibt. Was heißt das Konkret?
-
Angenommen im Stream steht folgendes:
Erste Zeile\nZweite Zeile\nwobei \n für das newline Zeichen steht.
Dann steht nach
get(buf,5)dies im Stream:e Zeile\nZweite Zeile\nWeil 4 Zeichen gelesen wurden, ohne dass newline oder das Streamende erreicht wurden.
Führt man daraufhin
get(buf,25)aus, steht dies im Stream:\nZweite Zeile\nWeil get beim newline Zeichen endet, wurden weniger als 24 Zeichen gelesen. Deine Frage bezieht sich darauf, dass der Stream nun mit \n beginnt und nicht mit dem 'Z' aus 'Zweite Zeile'. Dies ist eventuell bei der nächsten Leseaktion wichtig.