c - 编辑文件扫描器以仅扫描每个文件的前 .01MB

标签 c file-io entropy

这个程序 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。

关于c - 编辑文件扫描器以仅扫描每个文件的前 .01MB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17904193/

相关文章:

c - 程序文件句柄

c - 为什么 *p++ 与 *p += 1 不同?

java - 如何检查两条路径是否在同一个挂载点上?

c++ - 如何从文件“HANDLE”中获取一个“HANDLE”到包含目录?

java - 检查Java中图像是否存在

android - 使用 rngd 后,[hwrng] 继续最大化熵

c - 为什么我获取数组元素的位置而不是其值? C

c - 如何停止一个计数器变量,该变量不断地计算先前 for 循环的值? C程序

c# - 使用 DPAPI 时安全地存储可选的熵