Witam.
Otóż często spotykam,eh raczej słyszę o zmiennej typu bool w C++,jednak problem w tym że mało kto jej używa,a jeszcze mniej się mówi.Ogólnie to moim zdaniem to przydatna jest i logiczna że tak to ujmę.Tylko problem taki że nie rozumiem,jak jej używać itp.Nawet oglądając na yt filmiki o C++,to facet używał funkcji sprawdzającej coś tam o funkcji kwadratowej,nie pamiętam dokładnie i powiedział że można także użyć bool jako funkcja typu bool.Dlatego mam prośbę do was,wytłumaczcie mi łopatologicznie o tym bool'u,jak używać.Jakiś prosty przykład dajcie,np jeśli liczba jakaś tam dzieli się i nie ma reszty to zwróci true bądź false.No wiadomo.
To są na sieci filmiki o zmiennej typu BOOL ? Możesz podesłać ?
Odpowiadając na pytanie ..
Zmienna typu bool może przyjmować wartości logiczne prawda lub fałsz.
Koniec wykładu.
Więcej oraz przykłady: https://pl.wikipedia.org/wiki/Logiczny_typ_danych
Przeczytaj to:
https://www.geeksforgeeks.org/bool-data-type-in-c/
I Obejrzyj to:
Jak czegoś nie Rozumiesz to Wróć tutaj.
Traktuj bool
jako subtyp integera (bo jest subtypem integera :) ), przyjmujący tylko dwie wartości 0
, 1
. Wszedzie gdzie C++ spodziewa sie zmiennej logicznej, for
, if
, while
... (true
/false
, 1
/0
) jeden daje prawdę, a zero fałsz.
A jak często używać bool'a oraz w jakiego typu operacjach?
OMG! Najlepiej w ogóle :), żart, ale każdy if
mnoży ilość testów razy dwa.
Używasz, po prostu, wtedy gdy jest Ci potrzebny, w konstrukcjach, które go wymagają; warty odnotowania przykład: if
- jeżeli, jeżeli warunek w nawiasie jest prawdziwy (true
/1
), to wykonuj to (po warunku), a jeśli fałśzywy, wykonuj po else
.
nicku2332 napisał(a):
A jak często używać bool'a oraz w jakiego typu operacjach?
Do każdej gdzie sens jest tak/nie.
Świat C/C++ ma to nieszczęście, że długo bool nie było, robiło się jakieś #define FALSE 0 *) itd, a kompilator nie sprawdzał typów (dodawanie 'Tak' do 'pomarańcz', prawda że trudno w tym doszukać się sensu?).
DUUUŻO kiepskiego kodu w związku z tym istnieje.
Nowsze standardy najpierw wprowadziły bool, jeszcze nie egzekwowany siłą, potem próby rozwodu bool z wyrażeniami (nigdy nie do końca zrealizowane, bo utrata kompatybilności itd). Nowsze języki C# czy Java mają bool, którego nie da się mieszać z liczbami.
*) widziałem też polski komercyjny kod z #define TRUE 0, normalnie nagroda Darwina
widziałem też polski komercyjny kod z #define TRUE 0, normalnie nagroda Darwina
Nie, nie, nieeeeeeee! Nie Widziałeś tego prawda? Taki żart tylko, proszę... :)
lion137 napisał(a):
widziałem też polski komercyjny kod z #define TRUE 0, normalnie nagroda Darwina
Nie, nie, nieeeeeeee! Nie Widziałeś tego prawda? Taki żart tylko, proszę... :)
Widziałem, pierwsza połowa lat 1990, FALSE jak się łatwo domyślić 1
Widziałem, pierwsza połowa lat 1990
A, to OK, wtedy nie takie rzeczy się działy :)
Przykład negatywny (jak to jest spieprzone w c/c++, wymienność bool / wyrażenia) masz tutaj, pierwsza funcja bool
https://4programmers.net/Forum/C_i_C++/336281-problem_z_sortowaniem_struktury?p=1654037#id1654037