#include<stdio.h>
#include <stdlib.h>
unsigned int SDBMHash(char *str)
{
unsigned int hash = 0;
while (*str)
{
// equivalent to: hash = 65599*hash + (*str++);
hash = (*str++) + (hash << 6) + (hash << 16) - hash;
}
return (hash & 0x7FFFFFFF);
}
//哈希用于SHA256加密 哈希只能加密无法解密 还运用于卡巴斯基病毒库的源码中,应用广,功能<span style="font-family: Arial, Helvetica, sans-serif;">非常强大</span>
void main()
{
printf("%u", SDBMHash("rocket"));
printf("\n%u", SDBMHash("rocket"));
printf("\n%u", SDBMHash("zrf-rocket"));
printf("\n%u",SDBMHash("黑鹰"));
getchar();
}
更多资料 · 微信公众号搜索【CTO Plus】关注后,获取更多,我们一起学习交流。
关于公众号的描述访问如下链接