Citat:
Ursprungligen postat av
rudimentarperson
Metoden tar in 2st. bool. Ifall en av dem är 'true' returneras 'true' - annars returneras 'false'.
För
minst en av dem (logical or) har du rätt operator. För
exakt en av dem, alltså inte båda (logical xor) finns ingen operator. Kombinera några andra eller nästla if-satser.
Allt utom 0 räknas som sant i C/C++. I C++ kan bool vara bara 0 eller 1 så ^ (
bitwise xor) fungerar som en logical xor, men gör onödiga konverteringar mellan bool och heltal, tror jag. != är hur som helst bättre.
I C kan bool vara bara ett annat namn för en större heltalstyp, istället för en egen typ som i C++, och det går att lagra andra värden än 0/1 i dem. Om funktionen ska fungera korrekt även för sådana argument, kan du först normalisera värdena var för sig (allt utom 0 blir till 1) med !!x eller x != 0. Och eftersom du bara ska jämföra likhet/olikhet går det bra att plocka bort en ! från båda.
Citat:
Ursprungligen postat av
rudimentarperson
Och hur får jag ut denna information i debuggern?
Huh?