Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在C中处理文件块?

如何在C中处理文件块?
EN

Stack Overflow用户
提问于 2013-11-16 20:44:26
回答 1查看 50关注 0票数 0

说到C编程语言,我还是个初学者。

我想读取内存中1 KB的文件块,并将其存储在内存中的HashTable中。为了处理冲突,我的HashTable中的每个存储桶都有一个双向链表。

假设我将链表的一个节点建模为具有下一个和上一个指针的结构。我应该如何存储这个1 KB的文件块?

如有任何建议或想法,欢迎光临。

EN

回答 1

Stack Overflow用户

发布于 2013-11-16 20:47:33

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
typedef struct struct_FILEBLOCK FILEBLOCK ;

struct struct_FILEBLOCK {
    char             *data ;
    FILEBLOCK        *next ;
    FILEBLOCK        *prev ;
    } ;

那么你所有的实际数据块可以恰好是1k长,并且你的列表元素很小。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
FILEBLOCK *fballoc(void)
{
FILEBLOCK *fb = malloc(sizeof(FILEBLOCK)) ;
fb->data = malloc(1024) ;
fb->next = 0 ;
fb->prev = 0 ;
return fb ;
}

然后

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
void fbread(int fh,FBLOCK *fb)
{
    read(fh,fb->data,1024) ;
    /* whateva */
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20023645

复制
相关文章
如何在Hadoop中处理小文件-续
Fayson在前面的文章《如何在Hadoop中处理小文件》和《如何使用Impala合并小文件》中介绍了什么是Hadoop中的小文件,以及常见的处理方法。这里Fayson再补充一篇文章进行说明。
Fayson
2018/11/19
2.8K0
python处理xps文件_如何在Windows 10系统中处理XPS文件
XPS(XML Paper Specification)文件是Microsoft的Adobe PDF文件的竞争对手。也许这种类型的文件不像PDF那样受欢迎,但了解XPS及其工作方式可能会有所帮助。
全栈程序员站长
2022/08/23
4.1K0
如何在命令行中处理CSV文件
雷大亨
2017/12/20
4.1K0
【DB笔试面试511】如何在Oracle中写操作系统文件,如写日志?
可以利用UTL_FILE包,但是,在此之前,要注意设置好UTL_FILE_DIR初始化参数。
AiDBA宝典
2019/09/30
28.8K0
【DB笔试面试511】如何在Oracle中写操作系统文件,如写日志?
Linux文件系统之 — 通用块处理层
由于不同块设备(如磁盘,机械硬盘等)有着不同的设备驱动程序,为了让文件系统有统一的读写块设备接口,Linux实现了一个 通用块层。如下图中的红色部分:
用户7686797
2020/11/20
2.4K0
Linux文件系统之 — 通用块处理层
如何在 Linux 中创建虚拟块或循环设备?
Linux 用户可以拥有一个称为“循环设备”的虚拟块设备,它将普通文件映射到虚拟块,使其成为与隔离进程相关的任务的理想选择。
网络技术联盟站
2022/10/14
4.3K0
如何在 Linux 中创建虚拟块或循环设备?
如何在Java中处理JSON
New 一个 ObjectMapper对象,后续将利用这个ObjectMapper对象来进行一系列的操作。
泰坦HW
2020/07/22
1.5K0
如何在代码中处理时间
在国际化应用中,对日期/时间的处理远比你想象中的更难,特别是当涉及到时区的时候。为什么会这么难?我们该如何解决它?请听我为你一一解析。几乎所有的系统都离不开“时间”的概念,以至于大多数语言(及其默认库)都定义了日期/时间等类型。但是,我们日常所说的“时间”这个词实际上包含了多个相似却有微妙差异的概念。如果不能分清它们,会给你的开发工作带来很多烦恼。
ThoughtWorks
2021/09/15
1.5K0
如何在windows下和linux下获取文件(如exe文件)的详细信息和属性
最近在项目开发中,由cs开发的exe的程序,需要自动升级,该exe程序放在linux下,自动升级时检测不到该exe程序的版本号信息,但是我们客户端的exe程序需要获取服务器上新程序的版本号信息。最后由我用java实现linux上exe文件的版本号读取功能。下面是详细代码:
业余草
2019/01/21
6K0
如何在windows下和linux下获取文件(如exe文件)的详细信息和属性
如何在 Eclipse 中更改注释块的 @author 版权信息?
我们在使用 IDE——Ecilpse 进行开发,需要注明版权信息的时候,如果不更改默认设置的话,在注释块 @author 的内容就是电脑系统默认的,例如下图所示。为了开发方便就需要进行修改。
白鹿第一帅
2021/03/02
4.5K0
如何在 Eclipse 中更改注释块的 @author 版权信息?
Python中 文件处理
在文件处理当中,只有read默认是以字符为单位,其他方法均已字节为单位. def open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True): file表示文件的名称,可以是绝对路径,也可以是相对路径. mode表示打开文件的方式,r表示读,w表示写,a表示追加. encoding表示已哪种编码格式读取文件中的内容,如果不指定,默认使用当前平台的编码,对于
py3study
2020/01/08
7950
如何在Vuex中处理异步操作?
当组件中的fetchData方法被调用时,它会通过this.$store.dispatch触发名为fetchData的action。fetchData action中执行异步操作,例如发起API请求,然后在请求完成后通过mutations更新状态。
王小婷
2023/10/03
2600
如何在JavaScript中处理大量数据
在几年之前,开发人员不会去考虑在服务端之外处理大量的数据。现在这种观念已经改变了,很多Ajax程序需要在客户端和服务器端传输大量的数据。此外,更新DOM节点的处理在浏览器端来看也是一个很耗时的工作。而且,需要对这些信息进行分析处理的时候也很可能导致程序无响应,浏览器抛出错误。 将需要大量处理数据的过程分割成很多小段,然后通过JavaScript的计时器来分别执行,就可以防止浏览器假死。先看看怎么开始: function ProcessArray(data,handler,callback){ Process
CSDN技术头条
2018/02/09
3K0
如何在 JavaScript 中处理 HTML 事件?
在Web开发中,JavaScript是一种常用的脚本语言,用于增强网页的交互性和动态性。HTML事件是用户与网页交互时发生的动作,如点击、鼠标移动、键盘输入等。本文将介绍如何在JavaScript中处理HTML事件,以实现更丰富的用户体验和交互功能。
海拥
2023/06/27
2830
如何在 JavaScript 中处理 HTML 事件?
Python中的文件处理
我们在Python中使用open()函数以读取或写入模式打开文件。如上所述,open()将返回文件对象。为了返回文件对象,我们使用open()函数以及两个参数,该参数接受文件名和模式(无论是读取还是写入)。因此,语法为:open(filename,mode)。Python提供了三种模式以及如何打开文件:
用户7466307
2020/07/14
2K0
如何在 Python 中读取 .data 文件?
在本文中,我们将学习什么是 .data 文件以及如何在 python 中读取 .data 文件。
很酷的站长
2023/02/22
5.9K0
如何在 Python 中读取 .data 文件?
如何在 Git 中取消暂存文件?
在使用Git进行版本控制时,我们经常需要将文件添加到暂存区(stage)以便提交更改。但有时候我们可能会错误地将文件添加到暂存区,或者改变了对文件的修改意图,这时候我们需要取消暂存并将文件从暂存区移除。本文将详细介绍如何在Git中取消暂存文件的方法,以帮助您管理版本控制过程中的文件更改。
网络技术联盟站
2023/06/17
2.8K0
如何在 Git 中取消暂存文件?
如何在 Linux 中查找大文件?
在 Linux 系统中,有时候我们需要查找并识别占用大量磁盘空间的文件。这些大文件可能导致磁盘空间不足或性能下降。本文将详细介绍在 Linux 中使用不同的命令和工具来查找大文件的方法。
网络技术联盟站
2023/06/09
18.1K0
如何在 Linux 中查找大文件?
如何在EDI系统中查询文件?
EDI系统为企业提供了可视化的界面,帮助企业管理业务数据,并且对收发的业务数据进行存档。您可以根据需求及时备份您的业务数据。EDI系统作为一款企业级软件,日常需要传输大量的文件,这些文件包含的数据量大并且各不相同,如何在EDI系统中快速地查询指定文件呢?今天就来一探究竟。
知行软件EDI
2021/06/17
1.8K0
如何在EDI系统中查询文件?
点击加载更多

相似问题

运行代码块,如C++ #ifdef调试

23

C错误处理异常,如

12

如何在代码块(如Eclipse中)自动导入Include?

13

如何在emacs中创建内联latex块(如\emph{...})

10

如何在快速文件中访问目标c块?

24
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文