红联Linux门户
Linux帮助

一句话的意思

发布时间:2009-10-16 08:39:09来源:红联作者:释梵
static
Hash(char *string, int len)
{
int h;

h = 0;
while (len--)
h = (h << 3) ^ *string++;
if (h < 0)
return -h;
return h;
}
这是一个哈希函数的算法,这之中 h = (h << 3) ^ *string++;是什么意思?
文章评论

共有 2 条评论

  1. 棉袄加短裤 于 2010-09-25 20:52:10发表:

    [url][/url]

  2. prinse 于 2009-10-27 12:22:35发表:

    LZ 不会不懂 C语言吧?

    = 是赋值运算,<< 是左移运算,^ 是异或运算,* 是指针 dereference 运算,++ 是后缀自增运算,这还会有疑问的?