Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 23.03.18
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard possible use of uninitialized variable

Ich habe ein Verständnisproblem, warum ich die Warnung
"possible use of uninitialized variable 'Factor' " für folgenden Codeaufbau bekomme, und zwar für die rote Zeile:
Code:
// head
int a;          // used everywhere in several functions
double FinalVal;
// end head

Func()
{
   if(Condition)
   {
      int Factor;
      if(Cond1)      Factor=2;
      else if(Cond2) Factor=3;
      // more code for a and Variable calc
      FinalVal=NormalizeDouble(a*Variable*Factor,2);
   }
}
Factor wird ausschließlich in Func() gebraucht, also gehört es da rein und nicht in den Head (steht es da, ist die Warnung weg) und es wird auch nur gebraucht, wenn die Bedingung true ist, also gehört es da rein und nicht an den Anfang der Func(). Und auch wenn dazwischen 1000 Zeilen Code stehen, bevor FinalVal kommt, das Ding ist initialized und ich verstehe nicht, warum ich ne Warnung kriege. Kann mich da vielleicht mal jemand erleuchten.
Danke. AVT