While vs for
-
Für wen ist das denn wirklich verwirrend? Butter bei die Fische oder Klappe halten.
-
Bashar schrieb:
Für wen ist das denn wirklich verwirrend?
Mindestens für blurry :p
DeathcubeUK schrieb:
Man könnte auch gleich alles in Assembler schreiben, anstatt eine Hochsprache wie C oder C++ zu verwenden. Oder man könnte auch gleich Binärcode im Hex-Editor basteln. [...]
Natürlich sollte man das! Dadurch ist man klarerweise viel näher an der Maschine! Wenn schon Hochsprache, dann sollte man zu modernen Varianten wie D oder Rust greifen und um das alte überholte C* Zeugs einen weiten Bogen machen.
-
blurry333 schrieb:
Meiner Meinung nach ist die while Schleife mehr ein Übel als eine Hilfe.
Ist mit der Programmierung wie im wirklichen Leben. Da sind manche Leute auch mehr ein Übel als eine Hilfe.
-
-
DeathcubeUK schrieb:
Im Jahr 2015 schon mal was von Strukturierter Programmierung gehört?
Die ist seit August 2002 als veraltet zu betrachten und sollte nicht mehr gelehrt werden.
Tatsächlich ist sie im C++-Umfeld zum Teil hinderlich und führt zu pascaloidem Gekröse.
-
blurry333 schrieb:
ich stelle hier mal eine vage Behauptung auf. Meiner Meinung nach ist die while Schleife mehr ein Übel als eine Hilfe. Gerade Anfänger werden dadurch verwirrt.
Warum? C und C++ wurden nicht für Programmierer entworfen, die nicht in der Lage sind, sich ordentliche Lehrbücher zu kaufen oder diese zu verstehen. Wer darauf keinen Bock hat, muss halt Java lernen oder das Programmieren anderen überlassen.
-
volkard schrieb:
Tatsächlich ist sie im C++-Umfeld zum Teil hinderlich und führt zu pascaloidem Gekröse.
Volkard!? Jetzt sei doch mal ehrlich!? Das Committee hätte mit C++11/C11 endlich die Möglichkeit gehabt, solch desaströs veraltete und künstliche Konstrukte wie Schleifen endlich aus der Sprache zu verbannen! Aber nein, was machen sie? Sie führen ein noch grausigeres for-each konstrukt ein??
-
Swordfish schrieb:
volkard schrieb:
Tatsächlich ist sie im C++-Umfeld zum Teil hinderlich und führt zu pascaloidem Gekröse.
Volkard!? Jetzt sei doch mal ehrlich!? Das Committee hätte mit C++11/C11 endlich die Möglichkeit gehabt, solch desaströs veraltete und künstliche Konstrukte wie Schleifen endlich aus der Sprache zu verbannen! Aber nein, was machen sie? Sie führen ein noch grausigeres for-each konstrukt ein??
Schleifen sind gut. Andere Sachen der Strukturierten Programmierung sind müllig.
http://en.wikipedia.org/wiki/Structured_programming#Early_exit
Early Exits sind aber heute streng zu bevorzugen.http://en.wikipedia.org/wiki/Structured_programming#Exception_handling
*lach*
Die hatten was im Tee.
-
Ja, eben. Das ganze gedöhns hätt man sich mit vernünftig platzierten
goto
s sparen können ... genauso wie diese sinnfreien Schleifen//edit: Noch dazu könnt' man sich mit
goto
die blöde Fragerei sparen, ob da alle Typen RAII sind oder nicht ...volkard schrieb:
Die hatten was im Tee.
*eeeek* was meinst Du damit? Will auch?! ... aber ich mag keinen Tee
-
int i = 10; do { } while ( --i );
->
int i = 10; start: if( --i ) goto start;
-
Nein, ich sehe hier kein Problem. For nutzt man, wenn Du inetwa sagen kannst für jedes, while nutzt Du bei solange oder während.
Für Klingonen ist das vielleicht verwirrend.
Mfg Martin
-
DeathcubeUK schrieb:
blurry333 schrieb:
Jaa aber warum 2 kopfgesteuerte Schleifen wenn es auch eine tut
Ja, mit einer**
for
-Schleife kannst Du einewhile
-Schleife emulieren, indem Du den Initialisierungsteil und den Anweisungsteil derfor
**-Anweisung leer lässt....
Außerdem: Mit**
while
kannst Du auch einedo...while
-Schleife erzeugen. Und das kannst Du nicht mitfor
**emulieren...Das ist ein Widerspruch. Wenn Du mit for auch while kannst und Du mit while auch do-while kannst, dann kannst Du mit for auch do-while.
Mfg Martin
-
ich kann mit
for
auchdo
...while
!?
-
Swordfish schrieb:
ich kann mit
for
auchdo
...while
!?for( bool first=true; first || <xxx>; first=false );
-
mgaeckler schrieb:
Das ist ein Widerspruch. Wenn Du mit for auch while kannst und Du mit while auch do-while kannst, dann kannst Du mit for auch do-while.
Mfg Martin
Nur wenn die Relation "kannst" transitiv ist, alter.
-
LOL, Respekt für blurry333.
Er hat euch schon wieder dermaßen getrollt, daß ihr seitenweise drüber diskutiert. Owned.Ich hoffe es war trolling und nicht ernst gemeint. Bei ihm kann man sich nicht immer so ganz sicher sein, wo der Fehler im biologischen OS liegt. Heisst nicht, dass ich mir nicht schon meine eigene Meinung über ihn gemacht hätte.
-
EOP schrieb:
Er hat euch schon wieder dermaßen getrollt, daß ihr seitenweise drüber diskutiert. Owned.
Keine einzige meiner Aussagen in diesem Thread war ernstgemeint. Ich brauch wohl ein Shirt mit dem Aufdruck "just trollin with" ...
-
Swordfish schrieb:
Keine einzige meiner Aussagen in diesem Thread war ernstgemeint.
Kommt mir irgendwie bekannt vor. :p
-
EOP schrieb:
int i = 10; do { } while ( --i );
->
int i = 10; start: if( --i ) goto start;
So ist es.
Die do-Schleife ist nur eine Schreibvereinfachung für einen bedingten Aufwärtssprung.
Die while-Schleife ist nur eine Schreibvereinfachung für das sehr oft vorkommende if(x) do cmd; while(x).
Die for-Schleife ist nur eine Schreibvereinfachung für das verdammt oft vorkommende init;while(x){cmd;inc;}.
Die Schreibvereinfachungen gegen einem irgendwann in Fleisch und Blut über und man vergißt das if-goto, was es eigentlich ist. Man darf das goto vergessen, kein Problem. Man darf es auch benutzen, kein Problem.