Relasjonsoperatorer
Relasjonelle operatorer (>
, <
, >=
, <=
, ==
, !=
) brukes til å sammenligne to verdier. De bestemmer forholdet mellom verdiene og gir true
eller false
.
For å skrive ut true
når du skriver ut en boolsk verdi med std::cout
, kan du enkelt bruke std::cout
med en boolsk verdi.
main
#include <iostream> int main() { std::cout << true; }
Som standard skriver std::cout
ut en for true
og null for false
. For å skrive ut true
og false
som ord, må du bruke std::boolalpha
manipulatoren. Den instruerer std::cout
til å vise boolske verdier som ord i stedet for tall.
first_boolaplha_usage
second_boolaplha_usage
#include <iostream> int main() { std::cout << std::boolalpha << true; }
Bruke operatorer
For å sammenligne om noe er likt, bruk ==
operatoren med to likhetstegn. Husk, =
er en annen operator som brukes for tildeling, ikke sammenligning.
main
#include <iostream> int main() { // Imagine you need to verify if the user has entered the correct password std::cout << std::boolalpha; std::cout << ("yw>r'Peq/2d" == "yw>r'Peq/2d") << std::endl; std::cout << ("yw>r'Peq/2d" == "VzF>.6Qy(UI?") << std::endl; }
Når du bruker de relasjonelle operatorene >
(større enn) og <
(mindre enn), kan du sammenligne to verdier for å sjekke hvilken som er større eller mindre. Resultatet vil være true
hvis betingelsen holder, og false
ellers.
main
#include <iostream> int main() { std::cout << std::boolalpha; // Checking if a customer has enough balance // To withdraw 300 from an account balance of 500 std::cout << (500 > 300) << std::endl; }
Hvis brukeren ønsker å ta ut 500 og saldoen deres også er 500, vil >
operatoren returnere false
, da den sjekker om saldoen er strengt større enn uttaksbeløpet. Uttaket er imidlertid fortsatt mulig. I dette tilfellet bør du bruke >=
eller <=
operatoren for å sjekke om saldoen er større enn eller lik uttaksbeløpet, som korrekt vil returnere true
.
main
#include <iostream> int main() { std::cout << std::boolalpha; // Checking if a customer has enough balance // To withdraw 500 from an account balance of 500 std::cout << (500 >= 500) << std::endl; }
1. Hva er standardoppførselen til std::cout
når den skriver ut en boolsk verdi?
2. Hvordan kan du sjekke om to strenger ikke er like?
Takk for tilbakemeldingene dine!