C/C++
文章平均质量分 83
存放编程语言的学习历程
chfens
这个作者很懒,什么都没留下…
展开
-
数据结构——C++实现二叉搜索树,前中后序、层序迭代遍历配合仿函数
实现二叉搜索树模板类、增删查改和四种迭代遍历原创 2023-09-13 13:33:51 · 378 阅读 · 1 评论 -
C/C++内存布局——代码区、常量区、静态区(BSS段、Data段)
介绍C/C++程序的内存布局,以及提出:定义一堆字符串常量指针会不会占用程序的大小?原创 2023-09-06 17:20:25 · 918 阅读 · 0 评论 -
设计模式——C++11实现单例模式(饿汉模式、懒汉模式),与单例的进程
C++11:线程不安全、多次加锁、单次加锁、不加锁实现单例模式。介绍饿汉模式和懒汉模式。最后实现一个单例的进程原创 2023-09-06 11:18:08 · 952 阅读 · 0 评论 -
C++——shared_ptr:make_shared的用处,与shared_ptr直接构造的区别
介绍了智能指针底层原理:资源指针、引用计数。介绍了make_shared的作用以及原理原创 2023-08-31 18:17:53 · 1570 阅读 · 0 评论 -
C++——Vector:push_back和emplace_back的区别,测试写入1GB大数据时的性能差距
介绍了push_back和emplace_back的区别以及应用场景,测试了写入大数据时的性能差距。原创 2023-08-31 16:25:50 · 798 阅读 · 0 评论 -
C++——vector:resize与reserve的区别,验证写入4GB大数据时相比原生操作的效率提升
介绍resize和reserve的区别,测试写入4GB大数据时性能的差距原创 2023-08-31 15:11:11 · 771 阅读 · 0 评论 -
C++——多线程编程:<condition_variable> && <atomic>,同步与生产者消费者模型
本文介绍了条件变量的介绍,原理和使用。提到了死锁问题、惊群效应、虚假唤醒三个话题。利用上一节的mutex和本节的condition_variable编写了一个简易的生产者消费者模型。原创 2023-07-21 13:07:44 · 215 阅读 · 0 评论 -
C++——多线程编程:<thread> && <mutex>,线程与互斥
thread:包括成员方法,std::ref,std::this_thread。mutex:四种mutex锁,两种RAII的锁管理器。分别附带使用示例。原创 2023-07-16 19:16:25 · 355 阅读 · 0 评论 -
C++——string和string_view
string是C++中处理字符串的常用工具,但是存在一些缺点。C++引入了string_view。本文介绍了string_view的优势、使用、原理和注意事项。原创 2023-07-09 14:48:30 · 1562 阅读 · 0 评论 -
C++——多态概念及多态原理、虚表指针及虚函数表
虚表指针与虚函数表,多态的概念,条件,应用,原理,以及拓展。原创 2023-03-24 23:38:26 · 210 阅读 · 1 评论 -
C++——网络聊天室,UDP实现Linux服务器和Windows客户端通信
实现Windows客户端与Linux服务端的通信。原创 2023-03-11 13:46:09 · 2078 阅读 · 1 评论 -
C++——new,delete,与placement new。
介绍new和delete原理、用法、常见错误、介绍定位new原创 2023-02-21 14:55:51 · 415 阅读 · 0 评论 -
C++——const、指针和引用,深度理解
介绍引用,对比指针,const与指针和引用的使用,引用的使用场景原创 2023-02-14 16:43:49 · 887 阅读 · 0 评论 -
C++——函数重载的原理,为何重载,如何重载
C++函数重载的简介,通过Linux反汇编查看重载的原理。原创 2022-08-04 00:00:55 · 818 阅读 · 0 评论 -
C++——类和对象一文解
一文解!六大成员函数,重载、友元,this指针、static关键字原创 2022-08-23 14:03:21 · 475 阅读 · 0 评论 -
C语言学生成绩管理系统——检查学号姓名,双向循环链表
检查学号和姓名格式、插入排序、保存本地磁盘,双向带头循环链表。原创 2022-06-18 17:22:06 · 1782 阅读 · 2 评论 -
C语言实现数据结构——顺序队和链队
C语言实现数据结构之队列:顺序队和链队。原创 2022-04-08 23:15:22 · 1418 阅读 · 0 评论 -
C语言实现数据结构——顺序栈与链栈
C语言实现顺序栈与链栈的基本功能。原创 2022-04-02 21:38:42 · 2116 阅读 · 0 评论 -
C语言实现数据结构——双向带头结点的循环链表
单链表进化,双向链表的介绍与功能实现原创 2022-03-27 20:19:24 · 1886 阅读 · 3 评论 -
C语言实现数据结构——单链表
C语言实现单链表的基础功能(严蔚敏C语言)原创 2022-03-22 21:29:29 · 3536 阅读 · 4 评论 -
C语言实现数据结构——顺序表
C语言实现顺序表的增删查改(严蔚敏C语言第二版)原创 2022-03-14 20:21:19 · 2145 阅读 · 2 评论 -
C语言结构体——内存对齐细则
结构体的使用、内存对齐以及注意事项原创 2022-03-10 13:00:00 · 637 阅读 · 0 评论 -
C语言——动态内存管理
介绍C语言的动态内存管理函数以及常见的错误使用案例原创 2022-03-18 13:00:00 · 463 阅读 · 0 评论 -
C语言实现简易三子棋,支持双人对战,电脑可拦截
在学习二维数组后我们加以应用能写出三子棋这样一个小游戏。具体实现并不复杂。基本思路:游戏首先打印菜单,由我们选择单人游戏,双人游戏或退出游戏。三子棋需要一个棋盘,我们可以通过循环打印来构造一个简单的3x3棋盘。我们需要一个函数在每次下棋子后都打印一次来表示目前的棋盘,于是创建一个二维数组接收棋子后方可遍历打印。我们用 * 和 # 代表两种棋子。游戏过程中玩家输入下标下棋后电脑下,直到决出胜负或平局。直接看代码。我们在写程序的时候要将函数模块化,不把所有函数都堆在一个源文件里。我们新建一个主原创 2021-11-08 21:02:50 · 4383 阅读 · 2 评论 -
数据存储之道——浅谈整型与浮点型存储方式有何不同
单精度和双精度浮点数存储的特殊性原创 2022-01-23 17:46:00 · 2239 阅读 · 0 评论 -
多组输入,scanf的与按位取反操作符的运用。
scanf与取反操作符的妙用。原创 2021-11-01 19:41:20 · 833 阅读 · 0 评论 -
sizeof 和 strlen于指针和数组的应用
在C语言中,我们时常需要计算和统计一个对象的空间大小或“长度”,我们便可以运用sizeof 和 strlen 来简便地得到结果,但是这俩在使用的时候仍有不少值得注意的细节。sizeof在C语言中,sizeof是一个判断数据类型或者表达式长度的操作符,而并非一个函数。在初见sizeof时我以为这是一个函数,在后面查阅资料才知道并不是函数而是操作符。其返回值是一个对象或类型所占用的内存字节数,返回类型为size_t,也就是unsigned int。sizeof的语法:sizeof (data type原创 2022-03-06 11:14:22 · 1042 阅读 · 0 评论 -
C语言Static关键字简述。
C语言static关键字简述原创 2021-10-26 19:39:37 · 152 阅读 · 0 评论 -
C语言 3位数水仙花数以及牛客网变种水仙花数,多种方法求解
先看水仙花数:输出所有的水仙花数,水仙花数是指一个3位数,其各位数字立方和等于该数本身。例如153=1^3 + 5^3 + 3^3思路:我们要做的是把三位数逐位拆开,因此我们可以定义三个变量用于存储各位。解法:用循环遍历100到1000之间,即所有的三位数。拿153举例,得到各位数后用三个变量接收,如果各位的三次方相加等于 153 ,即打印 153 。上代码。#include<stdio.h>int main(){ for (int i = 100;i < 1000原创 2021-11-02 15:15:59 · 2316 阅读 · 0 评论