首页
社区
课程
招聘
未解决 [求助]这个是什么搜索算法
发表于: 2019-7-20 10:45 2846

未解决 [求助]这个是什么搜索算法

2019-7-20 10:45
2846

for (;bytes_to_read;)
这句什么含义?相当于while(1)???


void searchfile(const char *filename, int fd, const unsigned char *value, const unsigned char *mask, int len)
{
    off_t offset = 0;
    unsigned char buf[1024];

    len--;

    while (1)
    {
        int r;

        memmove(buf, buf + sizeof(buf) - len, len);
        r = read(fd, buf + len, sizeof(buf) - len);

        if (r < 0)
        {
            perror("read");
            return;
        } else if (!r)
            return;

        int o, i;
        for (o = offset ? 0 : len; o < r; ++o)
        {
            for (i = 0; i <= len; ++i)
                if ((buf[o + i] & mask[i]) != value[i])
                    break;
            if (i > len)
            {
                unsigned long long pos = (unsigned long long)(offset + o - len);
                printf("%s: %08llx\n", filename, pos);
                if (bytes_before || bytes_after)
                    dump_context(fd, pos);
            }
        }

        offset += r;

    }
}

使用特权

更多操作 评论编辑回复


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 1
支持
分享
最新回复 (2)
雪    币: 277
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2
学到了
2019-7-30 22:23
0
雪    币: 39
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
这是在叫我学搜索嘿嘿
2019-7-31 13:58
0
游客
登录 | 注册 方可回帖
返回
//