![]() |
|
|||||||
| 論壇說明 |
|
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
|
|
主題工具 | 顯示模式 |
|
|
#2 (permalink) |
|
管理版主
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
VB 那個個人不懂
至於C 轉成 VB 主要把運算子搞清楚 轉換起來就沒問題了 <<8 是指二位元運算,向左移8個位元 <<1 表示乘2 <<2 表示乘4 所以 <<8 表示乘 256 那為何不直接用 * 256呢? 因為 << 有捨棄多出的位元 及 運算快的作用 (unsigned int 佔4個byte 可表示0~0xFFFFFFFF) 如果體質不好的編譯器用 *的話可能會溢位也不一定 ^crc 表示 位元XOR運算子 因為 VB沒有 位移運算子 的用法 所以只能用 * 256 又 VB的 Long 使用 4 個位元組 -2,147,483,648 到 2,147,483,647 所以可能必須用 Single 來兌換 C的 unsigned int 而且必須多一道判斷當大於 &HFFFFFFFF 之處理 (Temp=Temp Mod &HFFFFFFFF) 至於C的 ^ 就使用 Xor 是沒問題的 此帖於 2006-06-06 02:45 PM 被 mini 編輯. |
|
|
送花文章: 2061,
|