小编use*_*125的帖子

在C中访问大文件

我需要使用C访问大于2gb的文件.在程序的一次运行期间,将从文件中读取可变数量的字节并保存下一个位置的位置.在程序的下一次运行期间,读取文件位置并从该位置开始读取多个字节.

复杂的是偶尔可以通过将文件复制到新文件来"压缩"文件,减少已经读取的任何字节(我认为复制是唯一的方法).以这种方式删除的字节数也将被保存.

我需要知道文件从原始开始的当前位置,以便与另一个文件同步.这应该很简单,因为它只是(current_offset + deleted_bytes).

不容易的原因是fseek只使用long int索引将文件限制为2gb,而fsetpos使用fpos_t结构作为位置索引,这不是数字,不能来回转换为1.我不知道如何使用long long int索引进行文件定位,这将是理想的解决方案.

我该怎么办?

c windows visual-studio

5
推荐指数
1
解决办法
1409
查看次数

C 中未使用函数的影响

我用 C 语言编写了一个程序,该程序具有某个函数的多个不同版本。我根据硬件考虑因素选择要使用的函数,并在编译之前更改对此函数的单个调用。我通常也会不厌其烦地注释掉未使用的函数。但我想知道不加评论会产生什么影响。

在我看来,如果它们从未被调用,它们根本不会对执行时间产生任何影响。但它们会增加可执行文件的大小。由于可执行文件的大小无论如何都很小,所以这并不困扰我。唯一重要的是执行时间,这很关键。所以看来注释掉未使用的函数并不值得。我对吗?

c

1
推荐指数
1
解决办法
1370
查看次数

标签 统计

c ×2

visual-studio ×1

windows ×1