Znów operator logiczny. [while( liczba != 123 );]
Ostatnio zmodyfikowano 2011-04-23 15:13
MusicWarrior Temat założony przez niniejszego użytkownika |
Znów operator logiczny. [while( liczba != 123 );] » 2011-04-23 15:09:31 Moja niecierpliwość zmusza mnie do napisania kolejnego tematu. Mam nadzieje, że nie stwarza to problemu... Więc, staram się przez święta przerobić cały kurs podstaw C++. Tym razem zatrzymałem się na lekcji 15 do ... while. Mam ostatni przykład: #include <iostream> int main() { int liczba; do { std::cout << "Podaj liczbe 123 aby zakonczyc petle" << std::endl; std::cin >> liczba; std::cout << "Podales liczbe " << liczba << std::endl; } while( liczba != 123 ); std::cout << "Koniec" << std::endl; return 0; }
Interesuje mnie szczególnie ten kawałek: Program kończy swoją pracę wyświetlając komunikat "koniec" kiedy podaję liczbę 123. Jednak warunkiem zakończenia działania programu jest właśnie... liczba != 123. Ten wykrzynik jest moim problemem. Według mnie oznacza on, że... liczba = -123. Postanowiłem to sprawdzić pisząc program: #include <iostream> #include <conio.h> int main() { int liczba; liczba != 123; std::cout << "Liczba = " << liczba; getch(); }
Po odpaleniu, kompilator zaczyna wariować, wywala błąd: "Run-Time Check Failure #3 - The variable 'liczba' is being used without being initialized." Po czym kilkam continue i pojawia mi się konsola z... Liczba = - 858993460 , co prowadzi już do kompletnego zamętu w mej głowie. Ktoś mi wyjaśni o co tu biega? :) |
|
DejaVu |
» 2011-04-23 15:11:53 |
|
MusicWarrior Temat założony przez niniejszego użytkownika |
» 2011-04-23 15:13:25 Nie ma to jak lakoniczna wypowiedź na temat...
Dzięki...
@Edit: Kurcze, nie w tych tematach co trzeba szukałem :/ |
|
« 1 » |