帮忙转变一个函数

youxihaha 2003-09-29 10:01:25
帮忙把下面的函数转成pascal代码,谢谢
unsigned int hashpjw(char *arKey, unsigned int nKeyLength)
{
unsigned int h = 0, g;
char *arEnd=arKey+nKeyLength;
while (arKey < arEnd) {
h = (h << 4) + *arKey++;
if ((g = (h & 0xF0000000))) {
h = h ^ (g >> 24);
h = h ^ g;
}
}
return h;
}
...全文
26 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
hiflower 2003-09-29
  • 打赏
  • 举报
回复
function hashpjw(arKey: PChar; nKeyLength: DWORD): DWORD;
var
h:DWORD=0;
g:DWORD;
arEnd: PChar;
begin
h := 0;
arEnd := arKey + nKeyLength;
while arKey < arEnd do
begin
h := (h shl 4) + Ord(arKey^);
Inc(arKey);
g := h and $F0000000;
if g<>0 then
begin
h := h xor (g shr 24);
h := h xor g;
end;
end;
Result := h;
end;

lxpbuaa 2003-09-29
  • 打赏
  • 举报
回复
function hashpjw(arKey: PChar; nKeyLength: DWord): DWord;
var
h, g: DWord;
arEnd: PChar;
begin
h := 0;
arEnd := arKey + nKeyLength;
while arKey < arEnd do
begin
h := (h shl 4) + Ord(arKey[0]);
Inc(arKey);
g := h and $F0000000;
h := h xor (g shr 24);
h := h xor g;
end;
Result := h;
end;

————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧