Kursusindhold
C++ Introduction
C++ Introduction
Relationelle Operatorer
Relationale operatorer (>
, <
, >=
, <=
, ==
, !=
) bruges til at sammenligne to værdier. De bestemmer forholdet mellem værdierne og giver true
eller false
.
For at outputte true
, når du printer en boolsk værdi med std::cout
, kan du simpelthen bruge std::cout
med en boolsk værdi.
main
#include <iostream> int main() { std::cout << true; }
Som standard printer std::cout
et for true
og nul for false
. For at printe true
og false
som ord, skal du bruge std::boolalpha
manipulatoren. Den instruerer std::cout
til at vise boolske værdier som ord i stedet for tal.
first_boolaplha_usage
second_boolaplha_usage
#include <iostream> int main() { std::cout << std::boolalpha << true; }
Brug af operatorer
For at sammenligne om noget er lig med, brug ==
operatoren med to lighedstegn. Husk, =
er en anden operator, der bruges til 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 bruger de >
(større end) og <
(mindre end) relationelle operatorer, kan du sammenligne to værdier for at kontrollere, hvilken der 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 brugeren ønsker at hæve 500, og deres saldo også er 500, vil >
operatoren returnere false
, da den kontrollerer, om saldoen er strengt større end hævebeløbet. Hævningen er dog stadig mulig. I dette tilfælde bør du bruge >=
eller <=
operatoren for at kontrollere, om saldoen er større end eller lig med hævebeløbet, hvilket korrekt ville 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. Hvad er standardadfærden for std::cout
, når der udskrives en boolsk værdi?
2. Hvordan kan du kontrollere, om to strenge ikke er ens?
Tak for dine kommentarer!