如果做一个国产数据库一链接
承接上文,继续 1、重新定义数据结构typedef struct sdata
{
uint32_t index;
char vardata[128];
}sdata;
typedef struct sdata_index
{
uint32_t index;
uint32_t offset;
}sdata_index;
sdata_index 是我们要读到一个内存里面去的,同时,我们会使用内存查找的方式,拿到数据的索引值,在内存里面使用二分查找算法
int binSearch(uint32_t x, sdata_index *a, int n)
{
int low, high, mid;
low = 0;
high = n - 1;
while (low index_num)
return -1;
FILE * fp = fopen(file, "wb");
if (fp == NULL)
return -1;
fpos_t pos_start = 0;
fpos_t pos_index = 8;
fpos_t pos_data = pos_index + INDEX_BYTES;
fpos_t position = 4 + 4 + INDEX_BYTES + sizeof(data[0].vardata) * n;
fsetpos(fp, &position);
fsetpos(fp, &pos_start);
//写入总索引量
fwrite(&index_num, sizeof(int), 1, fp);
//写入目前索引量
fwrite(&n, sizeof(int), 1, fp);
//排序写入文件,已经排好了序号
//std::sort(&data[0], &data[n], Rule());
int offsetsum = 4+4+INDEX_BYTES;
int len = sizeof(data[0].vardata);
for (int i = 0; i
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?