contributed by <zoanana990
>
1
3
考慮以下程式碼,能將輸入的 8 位元無號整數逐一位元反轉,如同 LeetCode 190. Reverse Bits 的描述。
這題為你所不知道的C語言:數值系統篇的簡化版,原版為
上面過程如下所示,以 0x12345678
為例:
由上可知,程式碼會是對半調換,將程式碼簡化為 uint8_t
, 原理相同
問題:
5
考慮以下程式碼,能將輸入的 8 位元無號整數逐一位元反轉,如同 LeetCode 190. Reverse Bits 的描述。
這題為你所不知道的C語言:數值系統篇的簡化版,原版為
上面過程如下所示,以 0x12345678
為例:
由上可知,程式碼會是對半調換,將程式碼簡化為 uint8_t
問題:
9
解釋這個程式碼的原理
16
是我們想要統一的尺寸,也就是不管我們輸入什麼我們都必須回傳16,因此最好的方法是將 16
的那個位元組保留下來,其他歸零
ROUND_UP
程式碼
ROUND_DOWN
實作
type
相加,直接消除即可linux
中的 round_up/down
函式,位於 linux/include/linux/math.h
測試程式碼
結果
這個函式的應用在 stack
存放訊號時,如以下程式碼
10
div round-up/closest
的應用場合11