Autor Zpráva
nevimco2
Profil
Dobrý den,
nikce jsem nenašel vysvětlení rozdílu mezi operátory | a ||, & a &&.
Mohl by mi to někdo objasnit ?

Předem děkuji
Darker
Profil
http://cs.wikipedia.org/wiki/Bitov%C3%BD_oper%C3%A1tor


http://www.sfiles.host.sk/builder/1/CBUILDL1c.html
Joker
Profil
nevimco2:
Všechny ty uvedené operátory lze použít se dvěma operandy typu bool. V takovém případě | a || vrátí logický součet (OR), & a && vrátí logický součin (AND).
Rozdíl mezi nimi by (údajně) měl být v tom, že operátory || a && nevyhodnotí druhý operand v případě, že je výsledek daný už tím prvním (tedy např. false && foo() nevyhodnotí volání foo()).

Operátory | a & lze použít (a asi to je i jejich běžné využití) i se dvěma celočíselnými operandy, kdy dělají bitový součet, respektive součin, viz [#2] Darker.

A kromě výše uvedeného ještě existuje jiný, unární operátor &, který vrací adresu operandu (vyžaduje označit daný kód jako unsafe).
nevimco2
Profil
Mockrát děkuji ;-)

Vaše odpověď

Mohlo by se hodit

Zvažte, zda se neobrátit na specializované fórum, toto se zabývá především webovou problematikou.

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: