Explicati-mi,va rog,secventa de cod de mai jos.
***
unsigned n=17;
n=n | (1<<3)
printf("%u",n);
****
unsigned n=17;
if(n&~(1<<3))
printf("a");
else
printf("b");
Răspunsuri la întrebare
Răspuns de
0
n = 17: binar 10001
(1<<3) binar 1000 (1 miscat la stanga 3 locuri)
n | (1<<3) 10001 | 1000 = 11001 decimal 25
~(1<<3) 1000 invertit 11111111111111111111111111110111
n&~(1<<3) nu este 0: este ca true.
(1<<3) binar 1000 (1 miscat la stanga 3 locuri)
n | (1<<3) 10001 | 1000 = 11001 decimal 25
~(1<<3) 1000 invertit 11111111111111111111111111110111
n&~(1<<3) nu este 0: este ca true.
Alte întrebări interesante
Engleza,
8 ani în urmă
Franceza,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă