Kezdőoldal » Számítástechnika » Programozás » C++ shift-es szorzás?

C++ shift-es szorzás?

Figyelt kérdés

Mi a különbség az


a *= 2;


és


a <<= 1;


között?


Gondolok sebességre (a léptetés gyorsabb?), biztonságra stb. Van amikor érdemes az egyiket, ill. a másikat használni? Vagy abszolút semmi különbség nincs?



2013. jan. 8. 20:45
 1/4 _Jessy_ ***** válasza:
A léptetés gyorsabb. Biztonsági szempontból szvsz semmi különbség.
2013. jan. 8. 22:11
Hasznos számodra ez a válasz?
 2/4 iostream ***** válasza:
Bízhatsz a fordítóban, hogy ha konstansokkal szorozgatsz, akkor tudni fogja, melyik a gyorsabb. Úgyhogy ha SZORZÁST akarsz kifejezni, akkor inkább írj csillagot. A shiftet csak akkor használd, ha kifejezetten egy szám bitmintájával akarsz foglalkozni, pl hashek számolása, bitmaszkolások.
2013. jan. 8. 23:13
Hasznos számodra ez a válasz?
 3/4 anonim ***** válasza:
io válaszát értsd: ha a kódba odaírod a 2-est, akkor eleve eldönti, hogy melyik a jobb, ha változóval teszed ugyanezt, amit futási időben kapsz, az már más helyzet (de tekintve, hogy a bitshift nem megy 3-as szorzásra stb. így nem gond)
2013. jan. 9. 11:58
Hasznos számodra ez a válasz?
 4/4 anonim ***** válasza:
Különbség annyiban van, hoghy az előbbit szorzásnak látod te is, nem kell órákig böngészned a kódot, hogy meglásd, mi micsoda.
2013. jan. 9. 22:34
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!