Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Znów operator logiczny. [while( liczba != 123 );]

Ostatnio zmodyfikowano 2011-04-23 15:13
Autor Wiadomość
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:

C/C++
#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:

C/C++
while( liczba != 123 );


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:

C/C++
#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? :)
P-31735
DejaVu
» 2011-04-23 15:11:53
== równe.
!= różne.

/edit:
» Kurs C++ » Poziom 1Operacje porównania lekcja
P-31736
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 :/
P-31737
« 1 »
  Strona 1 z 1