【发布时间】:2013-07-28 01:40:59
【问题描述】:
这个程序http://www.fourmilab.ch/random/ 扫描整个文件以确定它的信息密度(又名熵/随机性)。
我想编辑它以仅扫描文件的前 .01 MB 而不是整个文件,以加快扫描时间(我需要扫描的网络共享为 2TB)。
源包含在下载中,所以应该很容易做到;我只是不知道如何开始。
有什么想法吗?
【问题讨论】:
这个程序http://www.fourmilab.ch/random/ 扫描整个文件以确定它的信息密度(又名熵/随机性)。
我想编辑它以仅扫描文件的前 .01 MB 而不是整个文件,以加快扫描时间(我需要扫描的网络共享为 2TB)。
源包含在下载中,所以应该很容易做到;我只是不知道如何开始。
有什么想法吗?
【问题讨论】:
快速浏览 ent.c 中的代码,在第 181 行显示了一个 while 语句。这一行从 fp 指向的文件执行 fgetc。为了使其正常工作,您只需在语句中添加一个计数器。类似于
while ((my_count++ < MAX_COUNT) && ((oc = fgetc(fp)) != EOF))
其中 my_count 是一个 int(或 long - 取决于您真正想要的大小),您的 MAX_COUNT 为 100000。请务必将 my_count 初始化为 0。
【讨论】: