endl ohne Zeilenumbruch
-
Es muss ein neues i sein weil bei der "alten" Range Based For Loop kann man keine vorhandenen Variablen nutzen, sondern muss immer eine neue anlegen.
-
sebi707 schrieb:
Es muss ein neues i sein weil bei der "alten" Range Based For Loop kann man keine vorhandenen Variablen nutzen, sondern muss immer eine neue anlegen.
Schon klar, aber das ist dann halt nicht mehr konsistent zur "normalen" for loop.
-
Ah, OK, Verwirrung vermeiden.
Gut, das ist irgendwie verständlich. Und wie gesagt -auto&&zu schreiben ist nicht SO schlimm
(Einzig doof dass viele Leute dann vermutlichautostattauto&bzw.auto&&schreiben werden -- an Stellen wo man gar nicht kopieren will. Was natürlich doof ist, aber Leute sind halt doof.)
-
@manni66 ich benutze derzeit Windows 10
-
Danke manni66 !!!!!!!!!!

Es hat geklappt mit cerr und flush !!!
Hier der Code:
#include <iostream> #include <time.h> void sleep(unsigned int mseconds) { clock_t goal = mseconds + clock(); while (goal > clock()); } int main() { char example [] = "Hallo du da !"; for ( int i = 0; i < 13; i++ ) { cerr << example[ i ] << flush; sleep(200); } }Könntest du mir jetzt noch erklären wieso das so funktioniert? Will ja auch dazu lernen bin ja eher neu auf dem Gebiet. also wieso das mit ceer funktioniert. Warum ich flush verwenden muss habe ich ja mittlerweile verstanden.
MfG Train
-
cerr ist so ähnlich wie cout, ist aber eigentlich für die Ausgabe von Fehlern gedacht. Vermutlich verarbeitet deine Entwicklungsumgebug die Ausgaben mit cerr irgendwie anders.
-
cout ist oft aus Geschwindigkeitsgründen gepuffert, cerr in der Regel nicht, da man eine Fehlermeldung, die ein Programm kurz vorm Absturz ausgibt, nach Möglichkeit auch sehen will.
-
ah ok. Danke für die Hilfe

-
manni66 schrieb:
cout ist oft aus Geschwindigkeitsgründen gepuffert
Deshalb hat er ja zunächst (vergeblich)
cout << ... << flush;angehängt ...
-
Belli schrieb:
manni66 schrieb:
cout ist oft aus Geschwindigkeitsgründen gepuffert
Deshalb hat er ja zunächst (vergeblich)
cout << ... << flush;angehängt ...
Das Problem ist nur, dass es mehrere Ebenen geben kann, auf denen gepuffert wird und das flush nicht notwendigerweise auch auf allen Ebenen ausgeführt wird. Mag sein, dass das als Fehler der Implementierung zu werten ist.
-
Naja, ich denke das Problem ist dass
couthier zeilengepuffert ist.
Für nur "normal gepuffert" sollte flush definitiv reichen.