嗨我正在比较哈希,我无法得到正确的输出。那么请你们帮助我。
for(int i=0;i<len;i++)
{
if(hash1[i]==hash2[i])
{
return 1;
break;
}
else
return 0;
break;
}
答案 0 :(得分:1)
您提前使用return
关键字,一旦代码点击return
,它就会超出for
- 循环。所以你在那里做的只是比较两个哈希的第一个元素。
break
语句也会打破循环周期,但在您的代码中它实际上从未到达此语句,因为之前总是有return
。
你应该尝试类似的事情:
for (int i=0; i<len; i++) {
if (hash1[i] != hash2[i]) {
return 0;
}
}
return 1;