Niux Napisano Czerwiec 12, 2013 Zgłoś Napisano Czerwiec 12, 2013 int a = 1, b; b = a<<2; Po tej operacji jaką wartość będzie miała zmienna b? Czy to będzie tak, ze strumień przypisze do zmiennej a liczbę 2 a później nada zmiennej b ta samą wartość jaka ma zmienna a? Cytuj
Bartosz Wójcik Napisano Czerwiec 12, 2013 Zgłoś Napisano Czerwiec 12, 2013 (edytowany) To operacja przesunięcia w lewo (shift left).Każdorazowe przesunięcie w lewo o 1 to tak jakbyś mnożył liczbę przez kolejne potęgi liczby 2.a = b << 1 oznacza a = b * 2^1 czyli a = b * 2 a = b << 2 oznacza a = b * 2^2 czyli a = b * 4 a = b << 3 oznacza a = b * 2^3 czyli a = b * 8 Edytowano Październik 9, 2015 przez Bartosz Wójcik Cytuj
eXray Napisano Czerwiec 12, 2013 Zgłoś Napisano Czerwiec 12, 2013 Do szybkiego sprawdzania snippetów polecam Ideone - pozwala na kompilację kodu w językach popularnych,a także tych mniej :) Twój kod zwrócił 4, ponieważ operator << to nic innego jak bitowe przesunięcie w lewo. Czyli binarnie 001 zostało przesunięte o 2 miejsca w lewo, co w wyniku dało binarnie 100. Cytuj
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.