Thema: Anfangswert
Einzelnen Beitrag anzeigen
  #9 (permalink)  
Alt 01.08.19
Ca$hDigger Ca$hDigger ist offline
Premium Mitglied
 
Registriert seit: Jun 2013
Beiträge: 364
Ca$hDigger befindet sich auf einem aufstrebenden Ast
Standard

Also Deklarieren und Initialisieren ist eine Sache, das Thema Geltungsbereich von Variablen nochmal eine andere.

Deklarieren und Initialisieren:
Nochmal abschließend, beim Deklarieren wird empfohlen auch direkt zu Initialisieren. Dies ist keine Pflicht, kann aber unauffindbare Fehler vermeiden.

Geltungsbereich:
Alles was außerhalb von Funktionen und Anweisungsblöcken ist, ist global und überall gültig.

Alles was innerhalb eines Anweisungsblocks { //code } deklariert wird ist lokal und auch nur dort gültig und natürlich in dessen untergeordneten Anweisungsblöcken. Dazu gehören auch Funktionen.
Beispiel { //code1 { //code2 { //code3}} }
Was in code1 deklariert ist, ist unter code1 code2 code3 gültig. Was in code2 deklariert ist, ist aber nur in code2 und code3 gültig...
Einfach mal nach Begriff Geltungsbereich suchen, findet man direkt in den ersten Treffern:
Rheinwerk Computing :: C von A bis Z – 9.11 Geltungsbereich von Variablen
Geltungsbereich von Variablen in C++
Funktionen: Bausteine eines C-Programms: Gültigkeitsbereich von Variablen

int i:
int i findet normal in Schleifen Verwendung und sollte auch nur dort verwendet werden also nicht global. Bei verschachtelten Schleifen nimmt man dann bei der Inneren int j oder int k usw. Es ist nur eine Variable und der Name ist natürlich auch frei wählbar aber in 99.9% nimmt man eben i,j,k etc.
Wenn Schleifen hintereinander also nicht verschachtelt vorkommen, können sie aber alle problemlos int i haben, da int i nur für den jeweils eigenen Geltungsbereich gültig ist und nicht mit den anderen kollidiert.