自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++:make_shared会调用拷贝构造的问题

【代码】C++:make_shared会调用拷贝构造的问题。

2023-04-04 23:05:13 585 1

转载 Linux系统之操作指令(二)

Linux常用指令及权限内容 初次接触Linux,虽然学起来有点懵逼,但是掌握了感觉还挺有趣的,把自己的理解记录在这,和各位一起进步。欢迎各位的批评指点和评论。 一、Linux学习各阶段二、Linux常用指令1.ifconfig命令2.ls命令3.mk...

2021-10-07 20:31:53 248

原创 文件描述符fd、重定向、文件流指针、动态库和静态库

文章目录 1.文件描述符fd2.重定向3.文件流指针:FILE*4.动态库和静态库 1.文件描述符fd 文件描述符:实际上就是内核中一个进程打开的文件描述信息数组(file* fd_array[])的下标,通过这个下标就能找到要操作的文件的描述信...

2021-10-07 20:28:59 371

转载 Linux vi和vim

1、vi介绍 Vi是所有Unix和linux系统下标准的编辑器,类似于Windows系统下的notepad(记事本)编辑器,由于在Unix和linux系统下的任何版本,vi编辑器是完全相同的,因此可以在其他任何介绍vi 的地方都能进一步了解它,vi也是linux中最基本的文本编辑器,学会它后,可以linux的世界畅通无阻,尤其是在终端中。 Vi和vim都是linux系统中的编辑器,不同的是,vim比较高级,可以...

2021-10-04 22:38:13 353

原创 TCP/UDP小结

UDP协议(用户数据报协议):是一种面向无连接、不可靠、面向数据报的传输层通信协议。主要特性:面向无连接:UDP不需要和TCP一样需要在通信前通过握手建立连接,可以随时发送数据。在发送端,应用层将数据传递给传输层的UDP协议,UDP只会给数据增加一个UDP头标识,表示是UDP协议然后就传递给网络层。有单播,多播,广播的功能;面向报文;不可靠性:不需要建立连接,想发就发,收到什么数据就传递什么数据,并且不会备份数据,也不关心对方是否已经正确接收。TCP协议(传输控制协议):是一种面向连接的

2021-09-21 20:25:13 418

转载 HTTP协议版本

HTTP 协议是互联网的基础协议,也是网页开发的必备知识,最新版本 HTTP/2 更是让它成为技术热点。 本文介绍 HTTP 协议的历史演变和设计思路。 一、HTTP/0.9 HTTP 是基于 TCP/IP 协议的应用层协议。它不涉及数据包(packet)传输,主要规定了客户端和服务器之间的通信格式,默认使用80端口。 最早版本是1991年发布的0.9版。该版本极其简单,只有一个命令GET。 GET ...

2021-09-08 17:21:16 1647

转载 堆栈段、数据段、代码段

malloc在内存的动态存储区中分配一个长度为size字节的连续空间,其参数是无符号整型,返回一个指向所分配的连续空间的起始地址的指针。注意:程序加载运行时,.rodata段和.text段通常合并到一个Segment(Text Segment)中,操作系统将这个Segment的页面只读保护起来,防止意外的改写。4)用const修饰的全局变量是放入常量区的,但是使用const修饰的局部变量只是设置为只读起到防止修改的效果,没有放入常量区。并不给该段的数据分配空间,只是记录数据所需空间的大小。

2021-09-05 14:39:09 9429

转载 C++:public/private/protected之区别

第一部分: public/private/protected的具体区别 在说明这四个关键字之前,就class之间的关系做一个简单的定义,对于继承自己的class,base class可以认为他们都是自己的子女,而对于和自己一个目录下的classes,认为都是自己的朋友。 1、public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用 2、private:private表示私...

2021-08-31 14:27:43 1336

转载 C++运算符重载

所谓重载,就是赋予新的含义。 函数重载(Function Overloading)可以让一个函数名有多种功能,在不同情况下进行不同的操作。运算符重载(Operator Overloading)也是一个道理,同一个运算符可以有不同的功能。实际上,我们已经在不知不觉中使用了运算符重载。例如,+ 号可以对不同类型(int、float 等)的数据进行加法操作;<< 既是位移运算符,又可以配合 cout 向控制台输出数据。C++ 本身已经对这些运算符进行了重载。C++ 也允许程序员自己重载运算符,这给

2021-08-20 22:44:34 80

转载 C++拷贝构造函数

一. 何为拷贝构造函数 首先对于普通类型的对象来说,它们之间的复制是很简单的,例如: int a = 100;int b = a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。 下面看一个类对象拷贝的简单例子。 #include <iostream>using namespace std;class CExample {private: int a;pu...

2021-08-20 22:09:30 73

转载 C++拷贝构造函数、构造函数和析构函数

一、拷贝构造函数 1、类对象的拷贝     对于普通类型的对象来说,它们之间的复制是很简单的,例如: int a=88;int b=a;       而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。    #include <iostr...

2021-08-20 22:00:54 535

转载 Linux之条件变量

条件变量 条件变量(cond)使在多线程程序中用来实现“等待--->唤醒”逻辑常用的方法,是进程间同步的一种机制。条件变量用来阻塞一个线程,直到条件满足被触发为止,通常情况下条件变量和互斥量同时使用。一般条件变量有两个状态:(1)一个/多个线程为等待“条件变量的条件成立“而挂起;(2)另一个线程在“条件变量条件成立时”通知其他线程。 为什么条件变量总是和互斥锁结合使用? 这其实有两...

2021-08-18 20:37:46 1322

转载 银行家算法

背景简介: 在银行中,客户申请贷款的数量是有限的,每个客户在第一次申请贷款时要声明完成该项目所需的最大资金量,在满足所有贷款要求时,客户应及时归还。银行家在客户申请的贷款数量不超过自己拥有的最大值时,都应尽量满足客户的需要。在这样的描述中,银行家就好比操作系统,资金就是资源,客户就相当于要申请资源的进程。 银行家算法是一种最有代表性的避免死锁的算法。在避免死锁方法中允许进程动态地申请资源,但系统在进行资源分配之...

2021-08-18 16:51:42 255

原创 Linux进程概念

什么是进程?进程 (process):程序被触发后,运行者的权限与属性、程序的程序码与所需数据等都会被加载内存中, 操作系统并给予这个内存内的单元一个识别码 (PID),可以说,进程就是一个正在运行中的程序。对于操作系统来说,进程就是一个程序运行的描述,通过这个描述,操作系统可以进行程序的调度运行管理。进程不仅仅包含了正在运行的代码,还包括了运行代码所需要的各种资源。内核中使用进程控制块PCB(process control block)管理一个进程的数据结构,每个进程都有一个PCB。在Linux下是

2021-08-05 13:08:19 283

原创 Linux系统之操作指令(一)

ls -l(此处为英文字母L) 显示文件的详细信息ls -a 显示当前路径下包括隐藏文件的所有文件ls -t 根据修改时间排序并显示当前路径下文件mkdir 创建文件夹pwd 显示当前目录路径mkdir -p 创建给出的目录,若这个目录不存在就常见它,可以一次创建多个目录,如:mkdir -p /practic/test/coderm 删除rm -r 文件名test: 递归式删除test下所有文件及文件夹,最后删掉testrm -i 文件名:操作前提示信息,询问是..

2020-11-09 15:35:27 98

原创 运算符

运算符是告诉编译程序执行特定算术或逻辑操作的符号,C语言中有四大运算符:算术运算符、关系逻辑运算符、位操作符、赋值运算符,其中:算术运算符有:- (减) +(加) * (乘) /(除) %(取模) --(自减) ++(自增)关系运算符有:>(大于) >= (大于等于) <(小于) <= (小于等于)、 == (等于) !=(不等于)逻辑运算符有:&&(与) ||(或) !(非)位运算符有:&(按位与) |(按位或) ^(按位异

2020-11-09 12:55:23 184

原创 小游戏 --- 三子棋

游戏流程1. 创建棋盘2. 打印棋盘3. 玩家走棋5. 电脑走棋6. 判定胜负游戏演示程序文件:main.cgame.cgame.h1. 创建棋盘首先在游戏主程序 game.c 中创建棋盘并初始化:char chessBoard[ROW][COL] = { 0 };初始化棋盘:void init(char str[ROW][COL]){//这里用库函数更方便 //for (int i = 0; i < ROW; i++) //{ // for (int j = 0; j <

2020-11-05 11:24:46 107

原创 递归算法---输出第n个斐波那契数

递归算法,就是按照某一包含有限步数的法则或公式对一个或多个前面的元素进行运算,以确定一系列元素(如数或函数)的方法。它的基本思想是把一个大问题拆分成数个小问题来逐个解决。在程序语言中表现为函数自己调用自己。斐波那契数列,指的是这样一个数列:1、1、2、3、5、8、13、21、…前两项相加第三项,等于根据它的规律,可以得到它的数学公式:F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3)C语言递归实现求第n个斐波那契数:#include <stdio.h&g.

2020-10-30 15:56:14 3523 1

原创 输出所有的水仙花数

自幂数,是指一个n位数,它的每个位上的数字的 n 次幂之和等于它本身,当n为3时,称为水仙花数。C语言代码实现://方法一:#include<stdio.h>#include<math.h> int main( ) { for (int num = 100; num < 1000; num++) { int count = 0;//创建一个int变量用来存放每一位的数字 int sum = 0; int temp = 0;//创建一个变量用

2020-10-22 17:09:53 924

原创 冒泡排序 --- 将输入的五个整数按从小到大的顺序输出

冒泡排序的原理:1.比较相邻的两个元素,如果左边的元素比右边的大,则交换两个元素值,小的放前面,大的放后面;2.重复上述步骤,直到最后一个元素没有可比较的对象;3.此时最后一个元素应该是所有元素值中最大的。代码实现:#include<stdio.h>#include<Windows.h>#define SIZE 5int main(){ //初始化一个五个元素的整形数组,输入五个元素值 printf("请输入五个数字:\n"); int arr[SIZE]

2020-10-20 16:20:35 14229

原创 二分查找法查找想要的有序数组元素下标

#include<stdio.h>#include<Windows.h>int main(){//十个元素的升序整形数组int arr[]={1,3,5,7,9,11,13,15,17,19};//要查找的数组元素int toFind=9;//计算数组的左右边界int left=0;int right=sizeof(arr)/sizeof(arr[0])-1;while(left<=right){ int mid=(left+right)/2;//

2020-10-19 11:39:47 274

原创 (C++)每次读取一个用户输入的单词,并分别指出以元音打头和以辅音打头以及不属于这两类的单词数量。

#include<iostream>#include<string>using namespace std;int main(){unsigned int vowel = 0;unsigned int consonant = 0;unsigned int other = 0;string ch;cout << "请输入(退出请输入q):" << endl;while ((cin>>ch)){//如果用户输入q,循环终止

2020-10-14 11:10:45 521

原创 基于MFC实现大华监控摄像头Demo(视频流和抓图)

根据大华官方的SDK包以及Demo文件(官网可以下载到)实现一些最基本的功能:登陆,注销,实时监视,抓图。先上一下博主自己做的结果图:本人的环境配置如下:操作系统:Win7 64位开发工具:Visual Studio 2017 ;X86摄像头型号:大华DH-IPC-HFW2233DM-LED实现流程如下:步骤1 调用SDK包中的相关库文件,完成 SDK 初始化流程,部分代码如下:#pragma comment(lib , "dhnetsdk.lib")#pragma com

2020-10-10 18:31:52 3431 7

原创 新人报道Test

新人报道在CSDN已经潜水三年了,从大三到研二,从本科毕设到硕士项目及课题,CSDN一直是我查找资料解决问题的首选。今天,在大佬们的建议下,终于下定决心开通自己的技术博客,也希望CSDN上的大佬们多多提意见。目标:成为一名优秀的程序员从本科开始,本着对编程有浓厚的兴趣学习编程,但由于本人后来研究生是就读于某渣双非的非计算机专业,学习计算机相关方面会有一定难处,但好在导师开明,非常支持我深入学习计算机相关知识,实属万幸(相比起本人室友的导师,我导真的太好了!!)。所以,今后定要倍加用功,每天都积累一点

2020-09-26 15:42:45 156

空空如也

空空如也

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

TA关注的人

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