自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 linux实现网络程序

客户端端需要调用connect()连接服务器,connect和bind的参数形式一致,区别在于bind的参数是自己的地址,而connect的参数是对方的地址。pthread_mutex_init的使用是为了解决在多线程访问共享资源时,多个线程同时对共享资源操作产生的冲突而提出的一种解决方法,在执行时,哪个线程持有互斥锁,并对共享资源进行加锁后,才能对共享资源进行操作,此时其它线程不能对共享资源进行操作。以上代码主要是创建套接字,获取远端信息,端口和ip将主机字节顺序转换为网络字节顺序。

2023-04-23 17:40:32 1392 2

原创 套接字实现TCP

socket实现TCP

2023-03-05 18:54:30 2086

原创 页表与线程学习

线程

2023-02-13 16:39:51 588

原创 学习笔记-----通道

个人学习笔记

2023-01-29 19:27:33 445

原创 动态库和静态库

软硬链接笔记

2023-01-13 15:00:15 102

原创 文件学习笔记

个人学习笔记

2023-01-12 12:24:43 468

原创 进程替换心得

进程替换

2023-01-02 22:50:04 266

原创 进程退出与等待

进程的退出与等待

2022-12-26 19:14:15 728

原创 linux下的环境变量

环境变量感觉挺复杂的。本人还没整明白需要多交流交流

2022-12-20 20:24:30 735

原创 关于C++多态的详解

C++多态

2022-08-16 22:20:53 538 23

原创 C++中的继承

c++里继承详解

2022-08-08 16:30:46 1096 9

原创 vector的基本实现

Vector的使用

2022-07-27 14:54:44 467 21

原创 C++模板

对于c++模板的解读

2022-07-13 12:37:36 427 13

原创 CPP的内存管理方式

CPP的内存管理方式,让大家更好认识new

2022-07-10 16:28:19 715 8

原创 极细解释CPP中类与对象

类与对象

2022-07-05 22:35:36 464 18

原创 CPP中的This

CPP中的This为什么c++会使用thisthis的特性无:one: **为什么会使用this**?:two:this有哪些特性?为什么c++会使用thisthis的特性无1️⃣ 为什么会使用this?在类中如果有多个成员函数,我们如果创建多个变量进行调用。编译器无法区分函数体中不同的对象。所以c++引入this来解决这个问题。即c++为每个静态成员增加了this隐藏指针,用该指针指向函数运行时该函数的对象。但是这一步是编译器进行的用户不需要去管,这也是this对于用户的好地方。我们通过以下实

2022-05-16 08:52:04 994 18

原创 CPP的引用

CPP的引用,欢迎点赞,互相关照。为了梦想前进。

2022-05-11 21:32:47 1407 15

原创 学c++修炼(day1)

c++入门基础:one:命名空间:two:输入&&输出:three: 缺省函数:four: 函数重载:arrow_right:命名空间:arrow_right: CPP的输入&&输出1️⃣命名空间2️⃣输入&&输出3️⃣ 缺省函数4️⃣ 函数重载简单的说下c++的头文件用#include;➡️命名空间我们可以发现会出现重命名的问题,c++为了处理这个c语言遗留下的问题引入了命名空间。命名空间的定义:定义命名空间,需要使用到namesp

2022-04-27 16:37:39 1447 10

原创 二叉树实现堆

利用二叉树实现堆1. 堆的定义2. 如何利用二叉树实现堆性质==堆的实现==:以上是实现过程中自己实现的排序和交换代码。分开更容易理解。总结:1. 堆的定义2. 如何利用二叉树实现堆堆的定义:如果有一个关键码的集合K = { , , ,…, },把它的所有元素按完全二叉树的顺序存储方式存储在一个一维数组中,并满足: <= 且 <= ( >= 且 >= ) i = 0,1,2…,则称为小堆(或大堆)。将根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆。性质

2022-04-11 00:11:25 1837 27

原创 队列的实现以及一部分队列(oj)

前言:通过不断深入学习在上篇我们完成栈的实现。这篇主讲队列的实现以及队列和栈的oj题。队列的实现前言:通过不断深入学习在上篇我们完成栈的实现。这篇主讲队列的实现以及队列和栈的oj题。一级目录 队列二级目录 栈的oj三级目录 队列的oj一级目录 队列二级目录 栈的oj三级目录 队列的oj队列大体图片如下下面我们进行动画演示队列的进入与删除:...

2022-04-05 23:47:13 520 34

原创 c语言模拟实现栈

栈文章目录栈^1^何为栈^2^出栈与入栈1何为栈2出栈与入栈栈字义栈顶进行数据的插入与删除的一端叫栈顶栈尾未进行数据的插入与删除的一端叫栈尾压栈栈的插入操作叫入栈/压栈/进栈出栈栈的删除(注意:栈的删除也是从顶部开始的)...

2022-03-30 17:15:00 2380 18

原创 算法的时间复杂度

算法的时间复杂1. 时间复杂度[ ~ ] 时间复杂度的概念[ ~ ] 时间复杂度规则(大O的表示法)[ ~ ] 常见的时间复杂计算(1)关于时间复杂度的概念:算法的时间复杂度是一个函数,它描述的是算法运算的时间。一个算法所花费的时间与代码执行次数成正比。算法中的基本操作的执行次数,为算法的时间复杂度。(2)时间复杂度规则:推导大O阶方法:用常数1玉带运行时间中的所以加法常数。在修改后的运行次数函数中,只保留最高阶项。如果最高阶项存在且不是1,则去除最高项目相乘的常数。得

2022-03-05 19:35:59 1346 5

原创 动态内存函数

学习目标:今日掌握动态内存函数学习内容: malloc和free calloc realloc 现在开始学习干:一.malloc和freemalloc是c语言提供了一个动态内存开辟的函数这个函数向内存申请一块连续可用的空间,并返回指向这块空间的指针。如果开辟成功,则返回一个指向开辟好空间的指针。 如果开辟失败,则返回一个NULL指针,因此malloc的返回值一定要做检查。 返回值的类型是 void* ,所以malloc函数并不知道开辟空间的类型.

2022-01-23 19:22:01 88 4

原创 位断与枚举与联合体(共同体)

学习目标:达到认知要求。学习内容:1、位断2、 枚举3、联合体(共同体)现在开始学习:1.位断1 什么是位段位段的声明和结构是类似的,有两个不同:1.位段的成员必须是 int、unsigned int 或signed int 。2.位段的成员名后边有一个冒号和一个数字。2.位段的内存分配1. 位段的成员可以是 int unsigned int signed int 或者是 char (属于整形家族)类型2. 位段的空间上是按照需要以4个字节( int )或者1个字

2022-01-23 15:43:21 218

原创 结构体内存对齐

学习目标:充分领悟结构体在内存中如何存储的。学习内容:解剖热门问题:结构体内存对齐。考点如何计算?首先得掌握结构体的对齐规则:1. 第一个成员在与结构体变量偏移量为0的地址处。2. 其他成员变量要对齐到某个数字(对齐数)的整数倍的地址处。对齐数 = 编译器默认的一个对齐数 与 该成员大小的较小值。VS中默认的值为83. 结构体总大小为最大对齐数(每个成员变量都有一个对齐数)的整数倍。4. 如果嵌套了结构体的情况,嵌套的结构体对齐到自己的最大对齐数的整数倍处,结构体的整体大小就是所有最大对齐数

2022-01-22 16:06:55 95 1

原创 字符串函数与内存函数

系列文章目录部分库函数的使用与实现提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录 strcpy strcat strcmp strncpy strncat strncmp strstr 总结前言在我们的学习过程中学习到了很多库函数,有些时候我们需要进行库函数的模拟实现,这是我写这篇博客的目的。记录实现的过程。 strcpy mystrcpy(char* dest, const char* src){ as

2022-01-20 11:14:32 420

原创 c语言指针进阶版

系列文章目录1.字符指针2.数组指针3.指针数组4.数组传参和指针传参5.函数指针6.函数指针数组7指向函数指针数组的指针8.回调函数9.指针和数组面试题的解析文章目录系列文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言为啥指针需要进阶那是因为指针是c语言的灵活它可以->变量/->结构体/->函数/->数组/->文件.非常灵活方便,因而写此文章提升能力

2022-01-11 19:20:16 395 14

原创 猜数字游戏

void menu(){ printf("*****************\n"); printf("*** 1.play ***\n"); printf("*** 0.exit ***\n"); printf("*****************\n");}void game(){ int guessnumber = 0; int r = rand() % 100 + 1;//1~100 while (1) { printf("猜数字:>"); s.

2022-01-06 23:50:15 2072 2

原创 编写函数将方阵 a[3][3]={1,2,3,4,5,6,7,8,9} 转置 (思路清晰一看就明白的)

直接上代码void transposition(int a[3][3])//转置{ int i, j = 0; int c[3][3] = { 0 }; for (i = 0; i < 3; i++) { for (j = 0; j < 3; j++) { c[i][j] = a[j][i]; printf("%d", c[i][j]); } printf("\n"); }}int main(){ int a[3][3] =

2021-12-04 21:33:57 617 7

原创 关于整形与浮点型与在内存中存储的区别

前言: 学习了int,double,fouat后我们会有疑惑这些是怎么在内存中存储的,因此我们展开标题内容进行说明。一、int 型内存中存储-1的 原码10000000000000000000000000000001 补码111111111111111111111111111111111110 反码1111111111111111...

2021-12-02 00:13:39 716 2

原创 牛客网题目BC76公务员面试

题目链接:公务员面试_牛客题霸_牛客网 (nowcoder.com)思路:首先看见题目要去掉头尾,我们会思考如何去掉,此时简单的思路就是先找到在拿掉;在把剩余数字相加求平均值。法一:#include<stdio.h>int main(){ int i = 0; int j = 0; int arr[7] ={0}; int max = 0; float sum = 0.0; int min = 100; int size = sizeof(arr) / s

2021-11-29 22:58:33 312 4

原创 猜凶手游戏

日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个嫌疑犯的一个。以下为4个嫌疑犯的供词:A说:不是我。B说:是C。C说:是D。D说:C在胡说已知3个人说了真话,1个人说的是假话。现在请根据这些信息,写一个程序来确定到底谁是凶手int main(){ int killer = 0; for (killer = 'a'; killer <= 'd'; killer++) { if ((killer != 'a') + (killer ==

2021-11-26 09:21:27 2481 3

原创 调整奇偶数的顺序

学习目标:如何利用代码实现调整数组使奇数全部都位于偶数前面。代码思路:1创建变量left,right;left数组起始位置的首元素,right为末位置的元素;2.利用left从左到右找奇数,right从右到左找偶数。3.找到后进行交换。4利用for循环打应出交换后的数组元素。void array(int ch[], int size){ int exchange = 0; int left = 0; int right = size - 1; while (lef

2021-11-22 23:48:58 162 3

原创 关于vs2022系列与strcpy函数的使用方法。

文章目录1.vs调试的基本步骤与基本使用方法。2.Debug与Release的区别。3.strcpy全称string copy -字符拷贝。strcpy函数的用法。前言在c语言的学习上每天都有知识需要记,博客就是我们的笔记本可以分享学习。一、调试的基本步骤1.发现程序错误的存在.2.以隔离、消除等方式对错误进行定位.3.确定错误产生的原因.4提出纠正错误的解决办法.5.对程序错误进行改正,重新测试.二、vs系列的基本操作方式。调试 F5

2021-11-21 22:05:43 7158 6

原创 对于结构体的分析

文章目录结构体知识的理解 一、结构体的声明 1.结构的基础知识:结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。 2.结构的声明: struct tag{ member-list; }variable-list; 由3部分组成,strut tag 结构体名称 结构体标签。 member-list成员列表。 varia...

2021-11-21 14:01:00 110 1

原创 如何去求二进制中1的个数

1.计算一个数的二进制中1的个数代码。2.计算2个数中二进制位上相同位都有1的个数。3.打印出二进制位上奇偶位置上的0与1。一、计算一个数的二进制中1的个数代码//算补码中1的个数count_number_of_1(unsigned int m){ int c = 0; while (m) { if (m % 2 == 1) { c++; } m /= 2;...

2021-11-20 23:45:23 577

原创 敲三字棋的思路

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言#字棋大家都了解也在纸上与同桌玩过。现在让我们进行回忆。 一:游戏菜单 二:构造棋盘 三:打印棋盘 四:下棋 1玩家下棋 2电脑下棋 五:构造规则(对输赢的判断) 总结:需要大量的知识的融合(运用了函数的定义与声明,while循环,if else语句,Switch语句,以及重要的时间戳)前言随着c语言的深入了解与认识,我们要进行实战演练。三字棋与其进行优化是一个不错的演练。在

2021-11-11 00:32:15 4212 1

原创 c基础学习

全局变量和局部变量所谓的局部变量通俗就是指{}在大括号内部的变量;然而全局变量在{}外的生命周期生命周期小范围指的是一个代码运行到结束,大的指程序的退役。stdio.h全称”standard input output.header“.中文翻译为“标准输入输出头文件”一.常量指的是不能变的量但我们用const去修饰变量是如const int num =10;此时num本身是变量但是加上const后无法改变。如图数组的运用,这边字符串末尾自带\0;而下面那个是一直输出遇.

2021-10-17 17:21:03 168 3

原创 一点运算题目

在本实例中,使用条件运算符和逻辑运算符构造表达式,通过输出函数显示表达式的结果,根据结果分析表达式的计算过程。#include<stdio.h>int main(){ int m=2,n=3,a=1,b=2; /*定义变量m,n,a和b并赋值*/ int x,y; /*定义变量x和y*/ x=(m=a>b)&&(...

2021-10-16 16:57:08 1376 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除