Dyskusja:C/Operatory: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
→‎Operacje_bitowe: nowa sekcja
Linia 63:
:"Przesunięcia w prawo. Operator prawy shift powoduje, że wzorzec bitowy w shift-expression lekkie po prawej stronie przez liczbę pozycji określoną przez additive-expression. W przypadku liczb bez znaku, pozycje bitów, które zostały zwolnione w wyniku operacji przesunięcia, są wypełniane przez zera. W przypadku liczb ze znakiem, bit znaku jest używany do wypełniania opuszczonych pozycji bitów. Innymi słowy, jeśli liczba jest dodatnia, używane jest 0, a jeśli liczba jest ujemna, używane jest 1." <ref>[https://msdn.microsoft.com/pl-pl/library/336xbhcz.aspx msdn.microsoft : Operatory przesunięcia w lewo i w prawo]</ref>
HTH --[[Wikipedysta:Adam majewski|Adam majewski]] ([[Dyskusja wikipedysty:Adam majewski|dyskusja]]) 16:55, 29 paź 2017 (CET)
 
== Operacje_bitowe ==
 
Witam,
 
operacje bitowe nie mają przykładowego programu. Próbowałem, ale wcale nie jest to łatwe. Poproszę o pomoc
 
<source lang=c>
#include <stdio.h>
 
int main ()
{
unsigned char a;
a = 0;
printf ("a = %u;\t ~a = %u\n", a ,(unsigned char) ~a);
a = 1;
printf ("a = %u;\t ~a = %u\n", a, (unsigned char) ~a);
return 0;
}
</source>
 
Wynik :
 
<source lang=bash>
gcc b.c -Wall
./a.out
 
a = 0; ~a = 255
a = 1; ~a = 254
 
</source>
 
Czyli inny wynik niż w tabeli .
TIA --[[Wikipedysta:Adam majewski|Adam majewski]] ([[Dyskusja wikipedysty:Adam majewski|dyskusja]]) 19:35, 9 gru 2018 (CET)
Powrót do strony „C/Operatory”.