Gültigkeitsbereich einer Variablen
-
Hallo!
Ich bin gerade dabei von C auf C++ umzusteigen.
Hab gleich mal eine Frage dazu:
Laut Tutorial kann man Variablen nun überall im Code erstellen, auch z.B. in der Kopfzeile einer for Schleife.
Doch der Bereich, wo die Variable gltig ist, müsste doch eigentlich nach der Schleife wieder vorbei sein!? Zumindest hätte ich es so verstanden.Ist beim MS Visual C++ 6 aber nicht so.
for(int i=0;i<10;i++) { zeiger[i]=i; }//hier müsste doch die variable int i nicht mehr gültig sein!? for(int i=0;i<10;i++)//somit müsste das doch machbar sein!? { cout<<"\n"<<zeiger[i]; }Was mache ich falsch? Gibts im VC++ irgendwo eine Einstellung für das?
Grüße,
Harri
-
Nabend,
ob es eine Einstellung dazu gibt, weiss ich nicht. Jedenfalls verhaelt sich der VC6 hier
falsch. Eine for-Schleife leitet einen neuen Gueltigkeitsbereich ein. Wird die
for-Schleife verlassen, so endet dieser und die Variable ist nicht mehr gueltig.Der VC6 verhaelt sich hier anders. Beachtest du das nicht, dann ist dein Code unter
anderen Compilern nicht uebersetzbar.mfg
v R
-
Ganz einfach, VC6 hält sich beim diesem Punkt (und auch bei anderen :)) nicht
an den Standard.Kannst ja mal versuchen die Spracherweiterungen abzuschalten. Ich befürchte jedoch
das dann auch einiges anderes nicht mehr so funktioniert wie gewünscht.
-
Leute rafft es endlich: VC6 ist von 1998!!!!!!!!!!!!!!!!
Kauft euch verdammt nochmal einen aktuellen Compiler oder ladet euch das kostenlosen VC++ Toolkit 2003 runter! Oder sollen wir in 5 Jahren (2010) immer noch über das VC6 Verhalten Auskunft geben???? 
-
Danke für die AW.
Naja, dann gehts halt nicht.
@Artchi : Lass es bitte mein Problem sein mit welchen Programmen ich arbeite.
Grüße,
Harri