请教个问题

Aydge 2005-06-08 02:31:53
{
int checksum;
unsigned int i;
unsigned int ch;

if (!data) return 0;
checksum=0;
for (i=0; i<len; i++) {
if (i>=offset && i<offset+sizeof(int)) ch=0;
else ch = *data;
ch+=(checksum<0); //这里读不懂
checksum=2*checksum+ch;
data++;
}
return checksum;
}
...全文
79 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Aydge 2005-06-08
  • 打赏
  • 举报
回复
好,就算语法上如2楼所说,请问checksum本来不可能小于0,他为啥一定要这么写?
zg351229063 2005-06-08
  • 打赏
  • 举报
回复
完全支持上述说法.
「已注销」 2005-06-08
  • 打赏
  • 举报
回复
ch+=(checksum<0); //这里读不懂
就是检测checksum是不是小于0,如果小于0,ch自增。。如果不是。。ch不变。。
「已注销」 2005-06-08
  • 打赏
  • 举报
回复
ch+=(checksum<0); //这里读不懂
----------------
checksum<0是否为真。。如果是真就是1。。。执行ch+=1;假为0..ch+=0;

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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