TCH (statz) | #1, Főfasz (10443) |
935 | #2a3f | ^ | Idézet | Mon, 27 Jan 2014 01:12:03 +01 |
31.46.*.* | *.catv.pool.telekom.hu |
kemi, az élkeresődben van egy olyan rész, hogyif (p < 0) p = 0; if (p > 255) p = 255;Na most, itt szükséges, hogy 255-nél nagyobb esetén 255 és 0-nál kisebb esetén 0 legyen, vagy csak simán nem szabad, hogy kívülessen a 0-255 tartományon? Mert ha az utóbbi, akkor elég egy olyan is, hogy p &= 255; Ha meg a másik (azaz 255-nél nagyobb az 255, 0-nál kisebb meg 0 lesz), akkor kipróbálod, hogy mi lesz, ha beteszed ezt int c255[2] = {0, 255}; int c0[2] = {0, 0};az elejére, ezt c255[0] = p; p = c255[p > 255]; c0[0] = p; p = c0[p < 0];meg a két if helyére? Hátha gyorsabb lesz a branchok nélkül. Ha esetleg lassabb lenne, akkor még ezt ki lehet próbálni: if (p < 0) { p = 0; } else { if (p > 255) p = 255; }mert ugye a másik ágat minek leellenőrizni, ha valami kisebb, mint 0, akkor az tuti nem nagyobb mint 255. |