※ 引述《caxz ( )》之銘言:
: 問兩個我面試時預到的C問題
: [問題一]
: unsign long v1 = 0x 00001111
: unsign long v2 = 0x 00001202
: unsign long v
: v= v1&(~v2)
: v= v|v2
: 請問這種位元運算有什麼方法教有效率的算法?
不是很確定你想要表達的意思,不過 v = v1 &(~v2)
v = v | v2
這兩行是不是可以化簡成一行 v = (v1 & (~v2)) | v2
然後把這個真值表寫出來,可以得到
v1 v2 ∣(v1 & (~v2)) | v2
───┼─────────
0 0 │ 0
0 1 │ 1
1 0 │ 1
1 1 │ 1
看起來等價於 v1 | v2
所以 v = (v1 & (~v2)) | v2 這一行,應該是可以化簡成 v = v1 | v2
: 我只會笨笨的轉換成二進位作運算再轉回16進位
: [問題二]
: Rewrite *((*papf)[3])(char *) as typedef _______
: 完全看不懂再問什麼?
: 感謝各位賜教啦
你確定你題目對嗎?根本不合法,無法作答