本文介绍: C语言没有C++语言中map键值容器数据结构,为在C语言中提供一种hashmap数据结构,并提供hashmap操作方法,具体包括新建、释放、清除、获得缓存数据量设置数据获取数据、浏览数据操作基于hashmap的开源代码很丰富,本文介绍如何设计hashmap的具体函数,仅介绍linux环境开源hashmap使用测试,具体测试了两种键值字符串键值数值键值)。

        C语言中没有C++语言中map键值容器数据结构,为在C语言中提供一种hashmap数据结构,并提供hashmap操作方法,具体包括新建、释放、清除、获得缓存数据量设置数据获取数据、浏览数据操作基于hashmap的开源代码很丰富,本文不介绍如何设计hashmap的具体函数,仅介绍linux环境开源hashmap使用测试,具体测试了两种键值字符串键值和数值键值)。具体操作流程如下所述:

1.首先在github下载hashmap开源源码压缩包下载路径下载方法如下所示

https://github.com/tidwall/hashmap.c/tags

图1 hashmap源码下载

2.拷贝hashmap的源码压缩包工作目录,并解压hashmap源码,如下图所示

图2 hashmap拷贝解压

3.在解压目录下新建main.c主控程序主控程序定义userstudent两种类型结构体,其中user结构类型用于验证hashmap数值键值,student结构类型用于验证hashmap字符串键值。具体程序如下所示:SourceURL:file:///home/lsl/work/gitwork/record_debug/05_ubuntu_linux/服务器ubuntu系统维护配置调试记录.docx

图3 测试main.c程序内容

4.新建Makefile文件,如下图所示:

图4 Makefile文件

5.新建编译脚本build.sh,如下图所示:

图5 编译脚本

6.给编译脚本添加执行权限,并运行编译脚本生成可执行文件如下图所示:

图6 运行编译脚本生成可执行文件

7.运行可执行文件验证hashmap的新建,写入读取和释放。

图7 hashmap写入/读取结果

结论:

  1. hashmap验证ubuntu20.4的linux上编译,运行和测试,如使用其他版本linux系统,编译结果可能存在差异;
  2. hashmap的源码使用源代码,不同的hashmap源码验证结果可能存在差异。

原文地址:https://blog.csdn.net/q544344318/article/details/134750607

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_27916.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注