logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【C语言】string.h中str函数源码实现解析(strlen、strcpy、strncpy、strcat、strcmp、strstr、memcpy、memmove)

strlen函数原型:size_t strlen(const char *str);strlen返回str中字符的个数,其中str为一个以’\0’结尾的字符串(a null-terminated string)。strlen源码简单实现如果不管效率,最简单的实现只需要4行代码:size_t strlen_a(const char * str){assert(str != NULL); //检查指针

文章图片
#c语言#开发语言#后端
【Git Bash】在公司你是如何向gitlab上提交代码和拉取代码的,请看这里→

Successfully rebased and updated xxx 表示:仓库的最近一次提交是别人提交的,但是没有冲突,直接push即可。这里强烈建议使用VS Code,它真的很方便,可以很清晰的标记有冲突的两个文件(pull下来的文件和你本地修改的文件)的不同,代码的不同。那么你再次打开你的QT项目,在代码里会有

文章图片
#git#gitlab#github +1
【计算机网络】6. 网络基础4之详解IP协议( IP协议头格式、IP地址管理、路由选择)

目录1. IP协议头格式2. IP地址管理2.1 IP地址的早期划分方式2.1.1 A类2.1.2 B类2.1.3 C类2.2 现在分配IP的方式:CIDR方式2.2.1 引入子网掩码3. 路由选择

文章图片
#网络#tcp/ip#网络协议
【计算机网络】7. 网络基础5之详解以太网协议,ARP协议,NAT协议,DNS协议

目录1. 以太网协议1.1 以太网协议格式2.ARP协议2.1 arp协议的格式2.2 arp缓存表2.2.1 为什么需要arp缓存表?2.2.2 arping发送的arp数据在抓包的时候为什么没有看到广播现象?2.2.3 为什么arp缓存表当中的记录还需要老化(失效)时间?3. NAT:地址转换协议4. DNS协议1. 以太网协议网络层的IP协议负责路由选择,而具体如何从A机器到B设备,网络层并

文章图片
#网络#网络协议#tcp/ip
【数据结构】1. 数据结构基本概念(数组、顺序表、链表、栈、队列、二叉树、红黑树、堆、哈希表)

目录1. 数组2. 数组和线性表的区别3. 线性表4. 顺序表5. 链表6. 顺序表与链表的区别1. 数组数组:在一段 连续的内存空间 存储多个 类型相同 的数据2. 数组和线性表的区别(1)数组静态分配内存,链表动态分配内存(2)数组在内存中连续,链表不连续(3)数组元素在栈区,链表元素在堆区(4)数组利用下标定位,时间复杂度为O(1),链表定位元素时间复杂度O(n);(5)数组插入或删除元素的

文章图片
#数据结构#链表#散列表
【C语言】string.h中str函数源码实现解析(strlen、strcpy、strncpy、strcat、strcmp、strstr、memcpy、memmove)

strlen函数原型:size_t strlen(const char *str);strlen返回str中字符的个数,其中str为一个以’\0’结尾的字符串(a null-terminated string)。strlen源码简单实现如果不管效率,最简单的实现只需要4行代码:size_t strlen_a(const char * str){assert(str != NULL); //检查指针

文章图片
#c语言#开发语言#后端
【STL】deque容器详解(deque常用的操作函数、构造函数、赋值操作、大小操作、插入和删除、数据存取)

(1)功能:双端数组,可以对头端进行插入删除操作,也可以对尾端进行插入和删除操作。vector对于头部的插入效率低,数据量越大,效率越低,例如头部后有十万个数据,则往头部插入一个数据时,十万个数据都需要往后挪一挪才能在头部插入数据。deque相对而言,对头部的插入删除速度会比vector快。vector访问元素时的速度会比deque快,这和两者内部实现有关。

文章图片
#c++#容器#数据结构 +1
【STL】vector容器详解(vector常用的操作函数、构造函数、赋值操作、容量和大小、插入和删除、数据存取、互换容器、预留空间)

(1)vector容器和数组非常相似,也称为单端数组。(2)vector与普通数组区别:不同之处在于数组是静态空间,而vector可以动态扩展。动态扩展并不是在原空间之后续接新空间,而是找更大的内存空间,然后将原数据拷贝新空间,释放原空间。(3)vector容器的迭代器是支持随机访问的迭代器。

文章图片
#c++#容器#后端 +1
【QT】枚举常用宏(Q_ENUM,Q_FLAG,Q_DECLARE_FLAGS,Q_DECLARE_OPERATORS_FOR_FLAGS)

1. 使用Q_ENUM之前,必须在类中先声明Q_OBJECT或Q_GADGET宏。2. Q_ENUM(枚举类型)必须放在枚举声明之后,放在前面编译器会报错。3. 用Q_ENUM声明的枚举,会自动注册到Qt元类型系统,可以使用静态函数QMetaEnum::fromType()来获取QMetaEnum。4. Qt 中,模板类 QFlags 提供了类型安*的方式保存 enum 的逻辑运算结果,来解决类型

文章图片
#qt#开发语言#ui
【QT】史上最全最详细的QSS样式表用法及用例说明

Qt样式表支持各种属性、伪状态和子控件,可以自定义小部件的外观。QSS示例,如何为全局添加QSS样式(全局加载QSS的方法)selector { attribute: value }selector:选择器,如 QWidget、QPushButton、QGroupBox等attribute:属性,如color、background-color、border、padding等value:值,与属性对

文章图片
#qt#ui
    共 18 条
  • 1
  • 2
  • 请选择