自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 make和makefile

一般来讲在改变test.c文件内容时,内存什么的也会发生变化,相当于熟悉也发生了变化,所以change也会跟着改变,但在例如修改文件权限时就只会有change改变。有的人就会问,为什么我们使用clear要再make后面写名字而编译不用?我们看到,makefile定义的指令在第一行或者在第一次走的程序只需要输入make就可执行,往下都要输入对应的命名。可以看到,test.c比test更新,这时候make就没有问题,(make判断的时间是以modify来判断)有一个直接的回答就是没必要,提高编译效率。

2024-04-25 08:59:13 480 28

原创 gcc/g++ 的使用

———gcc:只能编译c语言————g++:c++和c都可以编译当然,c语言编译还是推荐gcc。

2024-04-24 10:03:01 461 12

原创 sudo的设置

sudo指令就是提高你的用户权限,用来完成root可以完成的工作,但是有一个前提,就是被root添加到信任名单中,接下来我们要讲解如何在root中添加用户到信任名单中。这样被指定的用户就可以使用root权限了,在用户sudo时会让你输入用户的密码而不是root密码。退出一定记得保存,保存不了就使用强制保存wq!

2024-04-24 08:31:32 230 3

原创 Linux之yum和vim的使用

vim是一个多模式的编辑器,新人在刚刚进入vim时,不要胡乱触碰鼠标或者键盘,此时vim处于默认命令行模式,这时我们输入即可切换到插入模式中写代码,按左上角esc即可退出插入模式,按shift+;即可进入底行模式,可用w——保存,q——退出,!——强制执行来进行一系列操作。

2024-04-24 08:05:01 1800 8

原创 string类

由于string内写了可用函数很多而且繁杂,这篇文章只介绍我们常用的string类内的函数。

2024-04-18 11:06:31 369 25

原创 Linux权限

命令:su功能:切换用户例如,要从root用户切换到普通用户user,则使用 su user。要从普通用户user切换到root用户则使用 su root(root可以省略),此时系统会提示输入root用户的口令。在root用户中,su -用户名可以直接进到目标,不用密码就可以访问。命令:sudo ----智能提权,输入自己密码后可提升到与root同级权限,但是要后面的添加信任。

2024-04-16 16:00:19 570 8

原创 模板小细节与了解STL

是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且 是一个包罗数据结构与算法的软件框架。

2024-04-16 15:01:10 588 4

原创 C++内存管理和模板

关键字:new delete我们知道,在C语言中内存的开辟和修改,要用到函数malloc/calloc等,而且要直自己判断内存开辟是否正确,所以在C++中,提供了两函数:new/delete由于malloc无法很好的支持动态内存申请的自定义对象初始化,new/delete可以看作专门用来初始化自定义对象的关键字。用new开辟自定义对象空间时,会调用自定义对象的构造函数并开空间用delete释放自定义对象空间时,会自动调用自定义对象的析构函数并释放空间对于多个对象则会调用多次构造析构函数。

2024-04-15 11:57:27 319 18

原创 Linux常用基础指令

a 显示了隐藏的含.开头的隐藏文件-l 列出文件详细信息。

2024-04-12 14:46:58 336 4

原创 类和对象二

在类里定义之后,我们就可以使用==来判断两类是否相等当然,也可以以函数的方式访问:两种访问方式完全相同,但是我更喜欢第一种。

2024-04-12 10:55:18 581 10

原创 拷贝构造

(日期类的拷贝一般来讲没什么问题,但是栈这些有开空间的函数在拷贝的时候,拷贝的地址与原函数指向同一个空间,在拷贝构造结束析构的时候,会把原函数的空间一起释放。由于拷贝构造是默认成员函数中的一员,所以我们不用特地写拷贝构造函数,编译器也会自动生成,但是如果有特殊的拷贝构造就要自己写,比如涉及深拷贝。会去调用拷贝构造,会造成效率和空间的损失。函数就不会调用拷贝构造直接进入函数,可以有效节约空间。在调用自定义类型的拷贝构造时,必须使用。拷贝构造是构造函数的重载。,都属于拷贝构造的写法。

2024-04-12 08:56:44 149 5

原创 类和对象小知识点

print中括号里自带对象的地址,在实参里不能自己加this,但是可以在类中加this。空类,用sizeof计算的的大小为一个字节,不存有效数据,标识对象被定义出来。类可以被计算大小,在不同对象中,调用相同函数时,调用函数地址相同,对象不同。传NULL没对NULL解引用的话程序正常运行。其结果和原来不加this没有变化。

2024-04-06 15:00:18 217 2

原创 类和对象一

我创建了自定义变量_cc,可以看出其他值都是随机值,_cc被做了处理。

2024-04-06 11:02:14 422 1

原创 课堂小笔记

在表达式运算的时候,会产生一个临时变量再赋值给左值,而临时变量是常量通常不可被修改,所以被引用的表达式得加上const别名不会另外开空间,但是在汇编中情况会有不一样;引用不能改变只指向,不能替代指针,最常见的例子就是链表中不能使用引用。内联函数在使用时不会简历栈帧,而是直接在函数调用的位置直接展开,适合用于函数内容不多切频繁调用的场景。如果内联函数调用过多,会导致可执行程序内存变大所以内联函数看情况使用。内联函数跨文件不能直接定义声明可直接在调用函数的头文件处写原函数代码:由编译器自动判断类型,可替代一些写

2024-04-05 11:38:11 185 4

原创 C语言文件操作

文件类型指针,检测为文件指针,取名为不同编译器FILE类型定义有所不同,但是都大同小异。下⾯我们可以创建⼀个FILE*的指针变量:FILE* pf;

2024-02-24 11:09:23 344 3

原创 C语⾔内存函数

将source内容中的第num个字节的数据拷贝到destination中此函数遇到不会停下destination和source有重叠现象,可能会出错。例:输出结果为:对于内存重叠部分就交给memmove来处理。

2024-02-21 09:55:15 333

原创 初步了解指针四

我们可以在之前文章的基础知道,数组名是数组首元素的地址,由代码可知:大家会发现,这两地址相同所以应该有些人会想问,那&arr和arr的地址不也一样嘛?这样,我直接用代码演示:以上对比可以发现,arr+1和&arr=1,地址结果不一样,&arr+1跳过的是一个数组,而arr+1跳过的是一个类型大小;

2023-12-26 10:55:33 580 6

原创 初步了解指针三

指针加减整数我们前面已经讲过,指针加减时会根据类型不同加减结果也会不一样,这里就不细讲了。我们直接开始由此可知道,在指针同类型相减的时候,可以求出(前提是头减尾),目前不同类型指针相减没有意义,编译器也会警告。我们还是拿数组来举例,我们已知数组在内存中是连续存放的,所以我们可以拿数组和数组做比较的方式来完成一些算法,图中sz算出元素个数再与数组首元素地址相加的得到最后一个元素\0,再拿p地址和其做比较,顺藤摸瓜把数组访问一遍。

2023-12-19 11:34:52 412 7

原创 初步了解指针二

由上图可知,指针的相加减和指针类型有所关联,int*类型加减变化了四个字节,char*类型加减变化了一个字节,double*类型加减变化了八个字节。关于void*指针,可以把它理解为一个万能垃圾桶,什么类型的指针都可以往里存放,但是void*类型指针。testp2函数指针进去会发现,const修饰的是p这个指针变量,所以导致p这个。一个是修饰int*类型,一个是修饰指针变量p,这两种修饰方法产生的结果会有不同。最直接的,看到报错信息我们可以知道,testp1函数指针进去的结果会让。本次博客来带大家了解。

2023-12-16 11:12:11 406 9

原创 初步了解指针一

我们知道,数组名表示首元素地址,我们将其加一放在指针变量ret中,再对ret解引用,取地数组中第二个元素的值打印出来,同时我们还学到了对指针变量前加*时,可以将内存中存储的信息取出,我们称为解引用,如果单单打印ret不用*,实际打印的将会是地址或者其他数据。指针,不是指的钟表上的指针,指针表示的是指向某元素的地址,就比如门牌号,就比如坐火车时我们要找的座位号,可以准确的指向我们要找的内存位置的坐标,就叫指针。同时要注意的是,指针大小和指针类型是没有关系,只和平台有关系。本次文章将带大家了解C语言指针。

2023-12-15 09:16:36 412 5

原创 C语言实现简易版扫雷

在实现扫雷之前,我们要先知道,玩家在输入坐标之后,输入坐标的格子会计算周围有几个雷,这样在用二维数组实现时,容易越界,所以,在创建二维数组时,需要留有一格的空间,全部初始化,然后实际游玩时在中间完,=这样就不会有越界访问的风险,直接在头文件中用直接喜欢的名字定义就好啦,行减二,列减二就ok。MIND是雷的数量哦。这样,游戏菜单就完成了,完成前记得测试一下,不要写了很多之后再测试发现之前都写错了。最后判断,如果win等于全场上没有雷的数量,游戏通关。这样放回计算的值,改成字符后再存入输入的坐标中,

2023-11-10 17:06:11 58 3

原创 C语言之分支语句if

本文章介绍了if语句的使用方法

2023-11-02 15:53:27 59 6

原创 无题(dog)

刚刚来到博客写的自己的自我介绍和一些小想法

2023-02-02 21:56:40 91 6

空空如也

空空如也

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

TA关注的人

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