这个比较假吗?

now*_*wox 2 c md5 md5sum

RFC1321中

我注意到这段代码:

if ((context->count[0] += ((UINT4)inputLen << 3)) < ((UINT4)inputLen << 3))
    context->count[1]++;
context->count[1] += ((UINT4)inputLen >> 29);
Run Code Online (Sandbox Code Playgroud)

我不明白比较:

((UINT4)inputLen << 3)) < ((UINT4)inputLen << 3))
Run Code Online (Sandbox Code Playgroud)

就像它总是返回0,对吗?

glg*_*lgl 7

没有这样的比较.看看括号是如何配对的:

它是

(X < ((UINT4)inputLen << 3))
Run Code Online (Sandbox Code Playgroud)

其中X=

(context->count[0] += ((UINT4)inputLen << 3))
Run Code Online (Sandbox Code Playgroud)