"Hej, Amigo!"
"En till liten lektion om bitvisa operatörer."
"Du vet att förutom de logiska operatorerna AND (&&), OR (||) och NOT (!), finns det också bitvisa operatorer AND (&), OR (|), NOT (~) och XOR(^ ), höger?"
"Japp. Bilaabo gav en gång en mycket bra lektion om detta."
"Tja, om de här operatörerna. Jag har två saker att berätta för dig:"
"För det första, förutom NOT (~), kan de tillämpas på booleska variabler, precis som logiska operatorer."
"För det andra, lat utvärdering gäller inte dem."
"Titta på det här exemplet:"
Koda | Motsvarande kod |
---|---|
|
|
"Är vänster sida mer kompakt än höger?"
"Japp."
"Och har det samma betydelse?"
"Japp."
"Helt riktigt. Men titta nu på samma uttryck med hjälp av bitvisa operatorer :"
Koda | Motsvarande kod |
---|---|
|
|
"Med andra ord, koden är densamma, men absolut varje operation kommer att utföras."
"Observera att om a är null, kommer ett undantag att skapas vid beräkning av c2!"
"Ah. Jag kan se det tydligare nu."
GO TO FULL VERSION