C/C++
文章平均质量分 55
About C/C++
laohehehe
https://github.com/laohehe
展开
-
关于如何写好单元测试的思考
软件架构的终极目标是,用最小的人力成本来满足构建和维护该系统的需求。通过发现错误,改进设计的做法来达到提高程序质量和可维护性的目的。原创 2023-11-30 21:20:54 · 562 阅读 · 0 评论 -
CRTP(奇异递归模板模式)
简单记录C++设计模式之CRTP(奇异递归模板模式)原创 2023-02-15 21:15:32 · 438 阅读 · 0 评论 -
【c++】关于在联合体中使用string
【c++】关于在联合体中使用string原创 2021-01-05 21:30:10 · 3455 阅读 · 0 评论 -
c++11之std::enable_if、模板编程
c++11之std::enable_if、模板编程原创 2020-09-27 15:40:50 · 766 阅读 · 0 评论 -
【c/c++】关于中文字符串的复制切割
在使用strncpy()函数进行字符串的复制时,有时候会出现这样的情况:目标字符串的最后一个字符是非法字符,导致写入数据库时报错; 【以GBK编码为例】原因在于一个中文字符占两个字节,假如需要写入的字符串长度是30,而恰巧第30位和第31位字节存储的是汉字,这样就会将汉字编码切割开来。然后与之后的字符(例如sql中,后面会加一个单引号)进行组合,形成意料之外的中文字符。 GBK编码采用双字节编码方案,其编码范围为:8140-FEFE,剔除xx7F码位,共23940个码位。其中中文...原创 2020-05-08 18:57:24 · 1282 阅读 · 0 评论 -
数据结构与算法基础-堆排序
堆排序的概念 若在输出堆顶的最小值(最大值)后,使待剩余n-1个元素的序列又重建成一个堆,则得到n个元素的次小值(次大值),如此反复,便能得到一个有序序列,这个过程称之为堆排序。要想实现堆排序,主要需实现以下两点----由无序堆建成一个堆----输出堆顶元素后,调整剩余元素为一个新的堆在这里主要实现第二点即可,学会了堆调整,建堆也就水到渠成了。堆调整算法范例(C语言)...原创 2020-03-09 11:35:48 · 175 阅读 · 0 评论