004
19.01.2008, 20:22 Uhr
xXx
Devil
|
Hmm weil mit return 0 dein Programm für beendet/abgearbeitet angesehen wird. => Gegenfrage: Warum sollte das Fenster offen bleiben?
Dann noch ein paar Anmerkungen: Konstante werden durch const gekennzeichnet (const int a(3); ). Variablen erst dort anlegen, wo sie auch genutzt werden (int z = ...), variablen mit ausschlaggebenden namen belegen und zu guter letzt ... niemals std::system("pause) nutzen!
C++: |
#include <iostream> // std::ostream, std::cout, std::cin #include <limits> // std::numeric_limits<> #include <algorithm> // std::max<>
std::istream& clear(std::istream& in) { return in.clear(), in.ignore(std::numeric_limits<std::streamsize>::max(), '\n'); }
int main() { const int max(3); int value; while (!(std::cin >> value)) clear(std::cin); std::cout << std::max<int>(value, max) << std::endl; clear(std::cin).get(); }
|
so sieht es dann im Idealfall aus Du kümmerst dich um falsch eingaben, nutzt fertige Funktionen und ist soweit vollständig optimiert. |