Frage : C++ uninitialized lokale Variable

Die Kerle,

I morgens C++… und Hilfe gerade erlernend würden SEHR!! geschätzt! Unter ist der Code und die Ausgabefehler, die ich receiving.

thanks bin!
Mike

Code:

//dieses Programm berechnet eine ISP-Kundenrechnung, die auf Paketwahl und Stunden used.
#include
using namespace-Geschlechtskrankheits-basiert;

int Haupt ()
{
doppelte Stunden, //-Zahl von Stunden used
savingsB, //-Monatssparungen für Paket B
savingsC, //-Monatssparungen für Paket C
Monats;      // Monatscost
int Wahl, //-Paket choice
Januar, Februar, März, April, Mai, Juni, Juli, August, September, Oktober, November, Dezember;
Putzfraumonat;            //-Monat selection


// Anzeigenersuchen um month
cout << „\ nPlease erreicht den Monat für den Fakturierungszyklus: “;
cin >> Monat;

// erhalten Stunden und berechnen Monatsgebühr für Paket A
cout << „\ nHow, das viele Stunden Sie benutzten? “;
cin >> Stunden;

wenn (Monat = Januar && Stunden > 744)
wenn (Monat = Februar && Stunden > 672)
wenn (Monat = März && Stunden > 744)
wenn (Monat = April && Stunden > 720)
wenn (Monat = Mai && Stunden > 744)
wenn (Monat = Juni && Stunden > 720)
wenn (Monat = Juli && Stunden > 744)
wenn (Monat = August && Stunden > 744)
wenn (Monat = September && Stunden > 720)
wenn (Monat = Oktober && Stunden > 744)
, wenn (Monat = November && Stunden > 720)
wenn (Monat = Dezember && Stunden > 744)
{
cout << „\ nYou eine unzulässige Menge von Stundengekommen, \ n“
<< „bitte das Programm wieder und versuchen noch einmal. \ n \ n“;
Rückkehr 0;
}

// Anzeigen-Paketwahlen und gelesenes selection
cout <<“ \ nPlease wählen die Zahl für Ihr Paket vor. \ n ";
cout << „\ n1. A \ n verpacken“;
cout <<“ \ N2. Paket B \ n ";
cout << „\ n3. Paket C \ n“;
cout <<“ \ nEnter die korrekte Zahl: „;
cin >> Wahl;

wenn (Wahl! = 1)
wenn (Wahl! = 2)
wenn (Wahl! = 3)
{
// Erzeugnisstörung, wenn gültige Wahl nicht getroffen wird und Wiederanlauf program
cout <<“ \ nYou eine unzulässige Vorwähler gebildet haben, bitte das Programm wieder und versuchen noch einmal. \ n \ n ";
Rückkehr 0;
}

wenn (auserlesenes == 1)

wenn (Stunden > 10)
Monats = ((Stunden - 10) * 2.00) + 9.95;
else
Monats= 9.95;

// Anzeigengesamtdue
cout << „\ nYour Gesamtschuld ist- $“ << Monats <<“ \ n \ n ";

// berechnen Einsparung mit höhere Rate plans
wenn (Stunden >= 13)
{
savingsB = Monats- (((Stunden - 20) * 1.00) + 14.95);
cout << „, wenn Sie verbessern, um B zu verpacken, das Sie $“ << savingsB <<“ \ n \ n " speichern würden;

wenn (Stunden >= 16)
{
savingsC = Monats - 19.95;
cout << „, wenn Sie verbessern, um C zu verpacken, das Sie $“ << savingsC <<“ \ n \ n " speichern würden;
}
}

wenn (auserlesenes == 2)
{
// erhalten Stunden und berechnen Monatsgebühr für Paket B
cout << „\ nHow, das viele Stunden Sie benutzten? “;
cin >> Stunden;

wenn (Stunden > 744)
{
cout << „\ nYou eine unzulässige Menge von Stundengekommen, \ n“
<< „bitte das Programm wieder und versuchen noch einmal. \ n \ n“;
Rückkehr 0;
}


wenn (Stunden > 20)
Monats= 14.95 + ((Stunden - 20) * 1.00);
else
Monats= 14.95;

// Anzeigengesamtdue
cout <<“ \ nYour Gesamtschuld ist- $ " << Monats << „\ n \ n“;

// berechnen Einsparung mit höhere Rate plans
wenn (Stunden >= 26)
{
savingsC = Monats - 19.95;
cout << „, wenn Sie verbessern, um C zu verpacken, das Sie $“ << savingsC <<“ \ n \ n " speichern würden;
}
}

wenn (auserlesenes == 3)
{
// erhalten Stunden und berechnen Monatsgebühr für Paket C
cout << „\ nHow, das viele Stunden Sie benutzten? “;
cin >> Stunden;

wenn (Stunden > 744)
{
cout << „\ nYou eine unzulässige Menge von Stundengekommen, \ n“
<< „bitte das Programm wieder und versuchen noch einmal. \ n \ n“;
Rückkehr 0;
}

Monats= 19.95;

// Anzeigengesamtdue
cout <<“ \ nYour Gesamtschuld ist- $ " << Monats << „\ n \ n“;
}
Rückkehr 0;
}

Output:

1>------ Bau begonnen: Projekt: ISP, Konfiguration: Win32 ausprüfen ------
1>Build begann 6/28/2010 10:55: 33 AM.
1>InitializeBuildStatus:
1>, das „verursacht, ausprüfen \ ISP.unsuccessfulbuild“, weil „AlwaysCreate“ specified.
1>ClCompile war:
1> ISP - 24.cpp
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (24): warnendes C4700: uninitialized lokale Variable „Januar“ used
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (25): warnendes C4700: uninitialized lokale Variable „Februar“ used
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (26): warnendes C4700: uninitialized lokale Variable „März“ used
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (27): warnendes C4700: uninitialized lokale Variable „April“ used
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (28): warnendes C4700: uninitialized lokale Variable „Mai“ used
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (29): warnendes C4700: uninitialized lokale Variable „Juni“ used
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (30): warnendes C4700: uninitialized lokale Variable „Juli“ used
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (31): warnendes C4700: uninitialized lokale Variable „August“ used
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (32): warnendes C4700: uninitialized lokale Variable „September“ used
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (33): warnendes C4700: uninitialized lokale Variable „Oktober“ used
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (34): warnendes C4700: uninitialized lokale Variable „November“ used
1> c:\users\harrisms\docume nts \ visual Studio 2010 \ Projekte \ ISP \ ISP - 24.cpp (35): warnendes C4700: uninitialized lokale Variable „Dezember“ used
1>ManifestResourceCompile:
1> alle Ausgänge sind up-to-date.
1>Manifest:
1> alle Ausgänge sind up-to-date.
1>LinkEmbedManifest:
1> alle Ausgänge sind up-to-date.
1> ISP.vcxproj - > prüfen c:\users\harrisms\document s \ Sichtstudio 2010 \ Projekte \ ISP \ aus, \ ISP.exe
1>FinalizeBuildStatus:
1>, das Akte „löscht, ausprüfen \ ISP.unsuccessfulbuild“. Das
1>, das „berührt, ausprüfen \ ISP.lastbuildstate " .
1>
1>Build succeeded.
1>
1>Time lief 00:00 ab: 01.68
========== Bau: 1 folgte, 0 ausgefallen, 0 aktuell, 0 übersprungenes ==========

Antwort : C++ uninitialized lokale Variable

O.K.I verpfuschte dieses. Ich betrachtete nicht die variablen Erklärungen…  Ich annahm h, dass Sie Schnüre verglichen, das ungenau ist von, was ich jetzt sehen kann. Meine Entschuldigungen.

Wenn wir den Code zu Ihrem ursprünglichen Pfosten umschalten, erklärten Sie Variablen für jeden Monat (using die Namen der Monate als der variablen Namen), aber Sie gaben den Variablen einen Anfangswert nie. Ich annehme h, dass Januar 1 sein soll, also fortfahren, Werte für den Rest der Variablen zuzuweisen:

    int-Wahl, //-Paketwahl
                  Januar = 1., . und . Februar = 2., . und . März = 3., . und . April = 4., . und . Mai = 5., . und . Juni = 6., . und . Juli = 7., . und . August = 8., . und . September = 9., . und . Oktober = 10., . und . November = 11., . und . Dezember = 12;

Die Teile, die ich über den „ifs“ sagte und der Gleichheitsoperator bleiben, zwar. Strcmp ignorieren ()--es ist zu dieser Situation irrelevant. Der geänderte Code using die Zahlvergleiche für die Monate sein als unten.

Wieder niederwerfen meine Entschuldigungen für das Springen der Gewehr und die Führung Sie die falsche Straße:) che
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
wenn ((Monat == Januar && Stunden > 744) ||
    (Monat == Februar && Stunden > 672) ||
    (Monat == März && Stunden > 744) ||
    (Monat == April && Stunden > 720) ||
    (Monat == Mai && Stunden > 744) ||
    (Monat == Juni && Stunden > 720) ||
    (Monat == Juli && Stunden > 744) ||
    (Monat == August && Stunden > 744) ||
    (Monat == September && Stunden > 720) ||
    (Monat == Oktober && Stunden > 744) ||
    (Monat == November && Stunden > 720) ||
    (Monat == Dezember && Stunden > 744))
{
    cout  <>
           
Weitere Lösungen  
 
programming4us programming4us