AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein (Erledigt)[C++] "*cook++"?/des Verschlüsselung/vnc Passwort
Thema durchsuchen
Ansicht
Themen-Optionen

(Erledigt)[C++] "*cook++"?/des Verschlüsselung/vnc Passwort

Ein Thema von chaosben · begonnen am 9. Feb 2006 · letzter Beitrag vom 27. Aug 2008
 
tommie-lie
(Gast)

n/a Beiträge
 
#7

Re: [C++] Was bedeutet "*cook++"?

  Alt 9. Feb 2006, 21:11
Zitat von Muetze1:
Erste Schleife lief von 0 bis 9, zweite von 1 bis 9.
Hm, der GCC läuft bei beiden von 0 bis 9, sowohl im C99-, als auch im C89-Modus.
Ein anderes Verhalten als ein Durchlaufen von 0 bis 9 würde ich ehrlich gesagt nicht erwarten. Laut C99-Rationale war für C89 die Bearbeitung des letzten for-Arguments immer der letzte Schritt in einem Schleifendurchlauf. Eine for-Schleife wurde in eine while-Schleife umgeschrieben, die so aussah:
Code:
for (arg1; arg2; arg3)
  list;
---------
arg1;
while (arg2)
{
  list;
  arg3;
}
Es würde also jeweils eine seperate Anweisung "++i" oder eine separate Anweisung "i++" in der letzten Zeile der while-Schleife stehen.
Offensichtlich scheinen die von dir angesprochenen Compiler je nachdem, op pre- oder post-increment verwendet wird, mal 'ne while- und mal 'ne do-Schleife draus zu basteln. IMHO eigenartiges Verhalten.
Da du mit der Deklaration der Variable i innterhalb des Schleifenkopfes schon C99 implizierst, habe ich mal ein wenig im Standard gelesen:
Zitat von ISO WG14:
The statement
Code:
for ( clause-1 ; expression-2 ; expression-3 ) statement
behaves as follows: The expression expression-2 is the controlling expression that is
evaluated before each execution of the loop body. The expression expression-3 is
evaluated as a void expression after each execution of the loop body.
Es ist jetzt also zwar nicht mehr als Umschreibung einer while-Schleife definiert, aber inhaltlich ist es so wie vorher auch, expression-3 ist das letzte, was ausgeführt wird.
Ich würde sagen, die von dir angesprochenen Compiler sind leicht defective oder implementieren irgendein anderes oder gar kein Standard-C.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz