6
Sto solo scoprendo Nimrod e ho una domanda di base (non ho trovato la risposta nella documentazione).In Nimrod, qual è la sintassi per le operazioni bit a bit?
Come si utilizzano le operazioni bit a bit? Ho il codice seguente, dove x è definito come un int:
if x and 1:
Questo non può essere compilato:
Error: type mismatch: got (range 0..1(int)) but expected 'bool'
E se provo:
if and(x, 1)
ottengo
Error: type mismatch: got (tuple[int, int])
but expected one of:
system.and(x: int16, y: int16): int16
system.and(x: int64, y: int64): int64
system.and(x: int32, y: int32): int32
system.and(x: int, y: int): int
system.and(x: bool, y: bool): bool
system.and(x: int8, y: int8): int8
Qual è il trucco?
No, ho davvero bisogno di eseguire un bit per bit e sulla mia variabile; più precisamente, qui, voglio controllare se l'ultimo bit è impostato o meno. – Fabien
Quindi usare '(x e 1)! = 0'? –
Sì, ha funzionato, grazie. – Fabien