我正在嘗試用 Javascript 制作一個 raycaster 游戲,為此,我正在學習本教程,該教程是用 C 撰寫的。
我的問題源于嘗試將以下兩行轉換為 javascript:
int tx = (int)(texWidth * (floorX - cellX)) & (texWidth - 1);
color = (color >> 1) & 8355711; // make a bit darker
我不知道這兩行中的“&”和“>>”是什么意思。Javascript 中是否有等價物?
uj5u.com熱心網友回復:
>>是正確的位移運算子和&按位與運算子,它們都在 JavaScript 中可用
uj5u.com熱心網友回復:
通過移除 (int) 型別轉換并將 int 替換為 let/var/const,代碼直接轉換為 JS。
let tx = (texWidth * (floorX - cellX)) & (texWidth - 1);
color = (color >> 1) & 8355711; // make a bit darker
&是按位,>>是按位右移,這里解釋得很好。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/373610.html
標籤:javascript C 位操作
上一篇:采用模板化長度引數的函式
