strdup

编程常用变量缩写快查表

缩写遵循通用规范,只使用显而易见的缩写,不要滥用,不要有歧义。变量名常用缩写applicationappargumentsargsaverageavgaddressaddrauthorityauthorizeauthattributeattrasynchronizationasynbuttonbtnbufferbuffcommandcmdcomparecmp …

Redis源码sds学习之四-sdscpy和sdsdup函数

Redis源码sds学习之四-sdscpy和sdsdup函数 本系列文章阅读的源码都是Redis-3.0.3版本,编译时使用的是libc库。本次学习 sds.c 中的 sdsrange 函数,该函数在sds测试main函数中,被赋予不同的参数调用多次。在sds动态字符串学习二中,学习了sdscat函数,该函数是字符串拼接函数,C语言中是strcat函数是字符 …

C语言实现hashMap

图中,紫色部分即代表哈希表,也称为哈希数组,数组的每个元素都是一个单链表的头节点,链表是用来解决冲突的,如果不同的key映射到了数组的同一位置处,就将其放入单链表中。下载链接:download.csdn.netdownloadsxf106170062513101710供参考学习hashMap.h#ifndef _HASHMAP_H#define _HASHM …

利用autotool工具编译和安装

平时自己写的程序多是直接写Makefile,大型的开源C代码,多是通过autotool工具来生成,需要学习下。为了具备通用性,用工作中实际程序来测试。一 用autoscan生成configure.scan步骤很简单,解压程序后,在源码目录运行autoscan就会生成configure.scan 如下:#autoscan# ll configure.scan …

10张图22段代码,万字长文带你搞懂虚拟内存模型和malloc内部原理

成功是急不来的。不计较眼前得失,将注意力真正着眼于正在做的事情本身,持续付出努力,才能一步步向前迈进,逐渐达到理想的目标。不着急,才能从容不迫,结果自会水到渠成。大家好,我是程序喵!摊牌了,不装了,其实我是程序喵辛苦工作一天还要回家编辑公众号到大半夜的老婆,希望各位大哥能踊跃转发,完成我一千阅读量的KPI(梦想),谢谢!咳咳,有点跑题,以下是程序喵的废话, …

深入浅出虚拟内存

从这一系列文章翻译并结合自己理解提炼出来的,代码都自己实践过,有时间的也可以直接阅读英文原链接Hack The Virtual Memory: C strings & proc Hack the Virtual Memory: drawing the VM diagram Hack the Virtual Memory: malloc, the heap & …

Effective C++——条款3:尽量用 new 和 delete 而不用 malloc 和 free

前言malloc 和 free是C语言中的库函数,在C++的应用中使用会产生问题,原因在于它们太简单:他们不知道构造函数和析构函数。初始化用两种方法给一个包含 10 个 string 对象的数组分配空间,一个用malloc,另一个用 new:array1 指向的是可以容纳 10 个 string 对象的足够空间,但内存里并没有创建这些对象。   string …

在C#中调用C++ DLL:实现加密功能的跨语言交互

在软件开发中,编程语言根据它们在计算机中的实现方式通常分为以下几类:解释型语言、编译型语言和半编译型语言。不同类型的语言具有各自的运行机制、反编译特性和适用场景。语言类型代表语言运行方式跨平台性反编译难度解释型语言Python, JavaScript逐行解释执行高简单编译型语言C, C++预编译成机器码低难(多为汇编级)半编译型语言Java, C#编译成中间 …

一文彻底搞懂虚拟内存模型和malloc内部原理

linux服务器开发相关视频解析:90分钟了解Linux内存架构,numa的优势,slab的实现,vmalloc原理epoll的网络模型,从redis,memcached到nginx,一起搞定通过proc文件系统探究虚拟内存我们会通过proc文件系统找到正在运行的进程的字符串所在的虚拟内存地址,并通过更改此内存地址的内容来更改字符串内容,使你更深入了解虚拟内 …