永发信息网

谁能解释这个C程序?

答案:1  悬赏:10  手机版
解决时间 2021-03-11 23:24
  • 提问者网友:你独家记忆
  • 2021-03-11 16:13
谁能解释这个C程序?
最佳答案
  • 五星知识达人网友:玩家
  • 2021-03-11 16:19
DWORD是32位

digest<<25 将digest左移25位,这样最前面的25位没有了,原先的后7位移到前7位,后面以0补足

比如00000000111111110000000011111111
变成了11111110000000000000000000000000

digest>>7 将digest右移7位,结果后7位被截掉,前面用0补足

00000000111111110000000011111111

变成了00000000000000011111111000000001

| 之后,实际上就是将原先digest 的前25位数都右移7位,后面的7位移到了最高7位
11111110000000000000000000000000

|
00000000000000011111111000000001

得数为
11111110000000011111111000000001

变成了追问哦 那能不能解释下
digest+=*fun_name;
fun_name++;
是干什么的?追答就是把字符的ascii值与digest相加
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯