自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++——类和对象的基础

在C++中,类的定义是通过class关键字开始的,后面跟着类名和一对大括号{},大括号内包含了类的成员声明,包括数据成员(也称为属性或字段)和成员函数(也称为方法)。类的定义可以出现在全局作用域、命名空间内或另一个类内(作为嵌套类)。private: // 私有成员只能被类的成员函数或友元访问int x, y;// 点的坐标public: // 公有成员可以在类的外部被访问// 构造函数// 成员函数:设置点的坐标// 使用this指针来区分成员变量和参数。

2024-07-05 08:00:00 967

原创 c++基础——引用、auto关键字、范围for的使用详细解释

定义方式引用的定义方式类似于指针,但用&代替了*。语法格式为:类型标识符 &引用名 = 目标变量名;。例如:int a = 10;int &b = a;,这里b就是a的引用,对b的任何操作都会反映到a上。基本特性别名:引用是变量的别名,引用名和目标变量名指向同一个内存地址。必须初始化:引用在定义时必须同时初始化,且之后不能再引用其他变量。不占内存:从概念上讲,引用不占据任何内存空间,因为它只是目标变量的另一个名字。

2024-07-04 08:30:00 920

原创 C++基础—命名空间、函数重载、缺省参数详解

命名空间是C++中管理代码、避免命名冲突的重要机制。通过合理使用命名空间,可以提高代码的可读性、可维护性和可重用性。在实际开发中,应根据项目需求和编码规范来选择合适的命名空间使用方式。原因:在头文件中定义变量或函数(不使用static、constexpr或inline修饰)可能会导致链接错误,因为头文件可能会被多个源文件包含,从而导致变量或函数的重复定义。解决方案:如果必须在命名空间中定义变量或函数,在头文件中应使用static、constexpr或inline修饰符,或者在源文件中定义它们。

2024-07-03 08:30:00 1013

原创 Linux基础IO操作详解

文件操作、文件系统、系统接口、缓存区、动静态库、怎么安装动态库的4中方式

2024-07-02 09:00:00 1213

原创 进程控制?——创建、退出、替换

return 返回进程退出码,进程结束。调用exit函数,退出进程同时进行资源清理、刷新缓冲区相关操作。调用_exit函数,直接强制进程终止。

2024-06-29 08:00:00 1000

原创 linux进程是什么?

优先权高的进程有优先执行权,在配置进程优先权对多任务环境的Linux很有用,并且还可以把重要的进程运行到指定的CPU上,把不重要的进程安排到某个CPU,能大大提高系统的性能。当进程的时间片用完后,进程就会被挂起,等待下一次CPU调度。接下去按下R/r之后,就会跳出来下面这句话,这里的renice指的就是要重新修改进程,此时 shell 正在等待我们输入进程的PID值,那我们就可以。我们发现,输出出来的变量值和地址是一模一样的,很好理解呀,因为子进程按照父进程为模版,父子并没有对变量进行进行任何修改。

2024-06-27 07:30:00 1221

原创 什么是操作系统

程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同。异常和中断是CPU从用户态到内核态的唯一途径,当发生异常和中断时,运行在用户态的CPU会立即进入到内核态,这是通过硬件实现的。若异常或中断处理程序能够解决相应的问题,则在异常或中断处理程序的最后,CPU通过执行异常或中断返回指令,,到调出相应的处理程序,整个过程称为异常和中断的响应。虚拟是指把一个物理上的实体变为若干逻辑上的对应物,用于实现虚拟的技术称为。的,它以不可预知的速度向前推进,这就是进程的。

2024-06-25 11:09:04 1002 1

原创 【数据结构】——二叉树的基础知识

树是一种非线性的数据结构,它是由n(n>=0)个有限节点组成一个具有层次关系的集合。把它叫做树的原因是它看起来像一颗倒挂的树,也就是说它是跟朝上,而叶朝下的。

2023-10-20 10:03:44 2488 14

原创 【数据结构——单链表】本篇文章通过图文结合的方式能让你轻松的掌握单链表

有了顺序表为什么还会出现链表呢?链表和数组类似,但是功能比数组强大的多,数组的空间是固定的,在定义数组的时候空间大小就已经固定了,在使用时有可能会造成空间的浪费或者面临空间不够的风险,而链表的空间时动态的,则避免了这一问题。链表是一种物理上存储结构非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。线性表中的数据结点在内存中的位置是任意的,即逻辑上相邻的数据元素在物理位置(内存存储的位置)上不一定相邻。

2023-09-27 14:01:39 1417 13

原创 【数据结构——顺序表】线性表很难嘛?这篇文章能让你轻松掌握顺序表

线性表是一种在实际中广泛使用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串…。线性表在逻辑上是线性结构,也就是说是连续的一条直线。但是在物理结构上并不一定是连续的,线性表在物理上存储时,通常以数组和链式的结构的形式存储。

2023-09-15 17:23:08 924 18

原创 【数据结构】想要学好怎么计算算法的时间和空间复杂度请点进本文

就是找到某条基本语句与问题规模N之间的数学表达式,就是算出了该算法的时间复杂度。

2023-08-28 11:32:27 793 14

原创 【C】数据类型其实并不难

int型是一种只表示整数的数据类型,它不能表示小数部分的实数。所以我前面使用double类型来处理实数的。由此可见,数值表现都有一定的特征和范围,它们是由数据类型决定的。C语言提供了丰富的数据类型。

2023-07-04 21:51:05 417 13

原创 【C】函数真的难嘛?其实一点也不难,原理很简单。

当然,我们也可以自己创建函数。而实际上,我们也必须亲自动手创建各种函数。下面我们来自己创建一个简单的函数。创建一个函数,接收两个整数参数,返回较大整数的值。printf函数和scanf函数等创建得比较好得函数,即使不知道其内容,只要了解使用方法,也可以轻松使用。首先来说下函数的创建方法,这里我们来定义一个名为max2的函数,如下所示:这里的函数定义由多个部分构成。

2023-06-17 17:13:48 2550 13

原创 【C】数组是什么?本篇文章让你有一个清晰的认识,不再害怕数组

学生的学籍号、棒球选手背后的号码,还有飞机的作为号码……在生活中我们经常会遇到相同类型的事务聚在一起的情况,与其逐一叫出它们的名字,还不如统一使用号码更加简单明了。本篇博客将会为大家介绍为了提高处理效率而把具有相同类型的数据有序地组织起来的一种形式——数组。

2023-06-14 22:11:53 430 8

原创 C真的不难学,不信就看下我关于循环的理解

生就是日复一日地不断的重复,既有相同的事情,也有相似的事情,却无论如何也无法回到最初。要想在生活的每一时刻都能有新的发现,恐怕只是一个美好的愿望。下面将会给大家介绍程序中的重复流程——循环。

2023-06-13 12:05:36 768 6

原创 c中分支结构程序

其实每天我们都通过自己的判断来决定自己的行动。例如:今天要下雨了,所以我带了伞。下面我们就通过程序来判断,如果输入的整数不能被5整除,就显示出相应的信息。代码如下:if(表达式)语句这样的语句称为if语句。if语句会让程序执行如下处理判断表达式的值,如果结果不为0,则执行相应的语句。括号内对条件进行判断的表达式称为控制表达式。而当输入的整数不能被5整除的时候,后续语句不会被执行,屏幕上不会显示任何的内容。通过判断输入的数能否被2整除,就可以确定输入的数是否是奇数。代码如下:、如果输入的是一个

2023-06-11 14:39:49 1492 7

原创 C中的运算和数据类型

通过应用求余数的运算来获取整数的最后一位数字。例如:int n = 0;printf("请输入一个整数:");printf("最后一位数是%d。return 0;运行结果如下:进行除法运算的/运算符和%运算符的结果依赖与编译器。

2023-06-10 15:12:52 757 12

原创 C语言真的难学嘛?(初始C)

即使是使用计算机进行计算,计算结果如果不显示在画面上,我们也没有办法知晓,这节主要学习怎么把计算结果显示在画面上。

2023-06-08 17:18:40 2700 12

原创 【C语言】编程练习(四)

例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19输入:1729,输出:19。

2023-06-06 22:27:01 523 12

原创 【C语言】编程练习(三)

输入一个无符号整数,按顺序打印每一位。如输入1234输出1234。

2023-06-04 21:18:10 578 13

原创 【C语言】编程练习(二)

不能通过传值调用函数,要使用传址调用,这样才能改变内存中的数。写一个函数实现交换两个整数。写一个函数判断是否是闰年。

2023-06-03 21:45:00 741 12

原创 【C语言】数据在内存中的存储

什么叫做浮点数,就是有小数的数据就要浮点数,比如:5.5 6.5 9.0等一些数据就叫浮点数,那么浮点数又是怎么在内存中存放的呢,下面听我一一道来。

2023-06-01 22:22:12 655 16

原创 【C语言】数据在内存中存储练习

但是当以整数的形式取出来的时候就不一样了,会发生整型提升。所以a,b,c,中存放的都是11111111。所以程序输出的结果为:4294967168。所以整形提升的时候,高位补充符号位,即为1。所以整形提升的时候,高位补充符号位,即为0。补码按位取反之后+1得到原码。所以%d打印a的值为-1.所以%d打印b的值为-1.所以%d打印c的值为255。无符号整形提升,高位补0。符号位不变其他位按位取反。符号位不变其他位按位取反。以上就是数据储存的练习。

2023-05-28 20:46:42 695 17

原创 【C语言】数据在内存中的存储(一)

大端存储模式,是指数据的低位保存在内存中的高地址中,而数据的高位保存在内存中的低地址中。小端存储模式,是指数据的高位保存在内存中的高地址中,而数据低位的保存在内存中的低地址中。下图是大端和小端存储的差异:由此我们可以得出结论在vs编译器中数据的存储是小端存储。例题:请设计一个程序来判断是小端存储还是大端存储int a = 1;return 1;printf("小端\n");} else {printf("大端\n");

2023-05-26 13:53:37 981 18

原创 代码的调试技巧

Debug通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便于用户很好的使用。return 0;以上代码在Debug环境的展示:以上代码在Release环境下的展示:反汇编对比:所以我们说的调试就是在Debug版本的环境中,找到代码中的潜伏问题的过程。编译器进行了那些优化呢?int i = 0;0 };for(i = 0;i

2023-05-23 19:09:59 1272 13

原创 【C语言】结构体详解

声明类型的同时定义变量定义变量的同时赋初始值结构体嵌套初始化struct P {int x;int y;} p1;//声明类型的同时定义变量p1 struct Point p2;//定义结构体变量p2 //初始化:定义变量的同时赋初值。2 , 4 };struct Stu //类型声明 {//名字 int age;//年龄 };//初始化 struct Node {int data;struct P p;

2023-05-19 21:01:13 429 13

原创 【C语言】指针详解(二)

由此可见数组名的地址和数组首元素的地址是一样的。数组名表示的是首元素的地址。使用指针来访问一个数组成员。由此可以得知p+i相当与数组arr下标为i的地址。

2023-05-18 19:42:02 556 5

原创 【C语言】指针详解(一)

type +*比如定义一个int类型的指针int * a;

2023-05-17 23:55:57 497 9

原创 【C语言】操作符详解(二)

由此可以看出当sizeof计算字符的大小是可以直接在括号里面写声明的类型,也可以不用括号直接在后面写变量名。

2023-05-15 14:32:45 507 15

原创 【C语言】操作符详解(一)

算数操作符位移操作符位操作符赋值操作符单目操作符关系操作符逻辑操作符条件操作符逗号表达式下标引用、函数调用和结构体成员。

2023-05-14 19:43:08 292 7

原创 【C语言】练习题10到(一)

电梯每次可以乘坐12人,每次上下需要的时间为4分钟(上需要2分钟,下需要2分钟)。,英文为Body Mass Index,简称BMI),是用体重公斤数除以身高米数平方得出的数字,是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。KiKi想知道已经给出的三条边a,b,c能否构成三角形,如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形或普通三角形)。已知一个函数y=f(x),当x<0时,y=1;请计算表达式“(-8+22)×a-10+c÷2”,其中,a = 40,c = 212。

2023-05-13 23:57:35 726 2

原创 【C语言】数组详细解答

数组的本质就是相同类型的变量的集合,放在一起。下面是我以输入学生成绩为例子,在不使用数组的情况下完成的程序代码。擅长处理这类数据的就是,它能通过”号码“把相同数据类型的变量集中起来进行管理。这样写的好处就是可以用数组实现相同类型的对象的集合。

2023-05-12 20:48:17 270 3

原创 【C语言】实现扫雷游戏(展开安全区域)

需要遍历周围的8个坐标,并统计雷的数量,这里我布置雷使用的是字符1,当字符1减去字符0时,就得到了数字1,所以就可以让8个坐标相加减去8个字符0.主函数是整个程序的入口,这里我用来写游戏的整个框架,游戏的实现主要是通过在主函数中调用相关的函数来实现的。使用到了递归,这样才能展开安全区域,周围八个坐标都没有雷那么显示的就是空格。传参的时候把需要初始化成什么字符传递过来,可以避免重复的代码。game函数主要用来实现游戏的逻辑。这个文件的作用就是声明函数。主要用来打印菜单的。

2023-05-10 17:54:29 333 9

原创 【C语言】自定义棋盘大小实现三子棋

我觉得最好的就是第三个版本,因为要是想改变棋盘的大小只需要在game.h中修改对象宏的大小即可,前两个版本都有一定的缺陷,我建议使用第三个版本来实现棋盘的打印,这样可以使代码的可读性和后期的修改更好。以上就是我关于使用C语言怎么自定义棋盘大小来实现三子棋的代码,希望能帮到大家,更好的掌握这门语言,请大家给我多评论,让我知道自己的不足,从而大家共同进步。使用switch根据玩家的选择来进行不同的实现;其中使用了rand()函数它的作用是生成随机的值。使用srand()函数来随机生成电脑下的棋子;

2023-05-09 21:04:15 326 7

原创 【C语言】函数和递归的基础题目

本篇博客主要介绍了怎么使用递归和循环来解题,希望能帮你更加好的理解递归和循环。通过以上的图片可以更加清晰的看出递归的执行过程。红色的线是在调用,蓝色的线是返回值。

2023-04-28 11:15:55 85 2

原创 【C语言】函数详解

自定义函数由程序员自主设计,和普通的函数一样有函数名、返回类型、形式参数等。statement;//语句项 } ret_type 返回类型fun_name 函数名para1 函数参数使用函数找出两个数中的最大值//使用函数求两个数的最大值 # include int get_Max(int x , int y) {x : y);int a , b;return 0;告诉编译器有一个函数叫什么,参数是什么,返回类型是什么,但是具体是不是存在,函数声明决定不了。

2023-04-26 16:53:28 100 1

原创 【C语言】分支和循环语句详解

本篇博客主要是介绍控制语句。用于控制程序的执行流程,以实现程序的各种结构方式(C语言支持三种结构:顺序结构、选 择结构、循环结构),它们由特定的语句定义符组成,C语言有九种控制语句。

2023-04-21 22:11:56 291 1

原创 【C语言】初始C语言(2)

类型说明符 数组标识符【常量表达式】类型说明符 :表示数组中所有元素的类型。数组标识符:表示数组类型变量的名称,命名规则和变量名一样。常量表达式:定义了数组中存放的数据元素个数,即数组长度。//define定义标识符常量 # define MAX 1000 //define定义宏 # define ADD(x, y) ((x)+(y)) # include int main() {return 0;

2023-04-14 20:23:55 222 2

原创 【C语言】初始C语言(1)

C语言中使用变量之前要先定义变量。定义变量时要取一个独一无二的名字,同时还要声明变量中的要存放什么类型的数据。也就是说一个变量中只能存放一种与其相同类型的数据。注意:定义整数数据类型的变量不能存放一个字符或者小数型数据。int age;age = 18;

2023-04-12 10:27:27 153 8

原创 【C语言】数据类型详解

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。其编译器主要有Clang、GCCMSVC、Turbo C等。但我们在定义变量时,要选择合适的数据类型,这样既可以提高空间的利用率,同时也能避免溢出等问题。今天关于数据类型的介绍就到这里。

2023-04-03 19:52:34 79

空空如也

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

TA关注的人

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