自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux(进程三(环境变量和优先级))

很简单,我们只需要PATH=$PATH:带上我们程序的路径就可以了,但是这种配置是暂时的,如果需要永久的话我们需要配置配置文件,让我们的bash进程在登录的时候帮我们把配置文件的内容加载进我们的环境变量当中。今天,我想和大家谈谈关于进程的优先级,关于进程的优先级,我们要从cpu的调度开始讲起,我们上次说了,cpu调度进程是以队列的方式来调度的,那么这样必定会存在一个优先级的问题,那么进程的优先级是怎么看的呢!刚刚说了我们在登录的时候,bash进程会获取到我们的环境变量,那么环境变量在内存中是如何组织的呢?

2024-04-05 20:15:56 390 1

原创 C++(三:类和对象)

匿名对象其实也很简单,字面意思就是没有名字嘛,就叫匿名对象,匿名对象的生命周期只存在这一行,出了这一行立马销毁,那它有什么用啊,我觉得它可以直接调用函数,调完就gg这个场景下还是很好用的.其实初始化列表也是用来初始化一个对象的,主要还是因为自定义类型我们需要一个一个初始化它和内置类型不一样,下面我们来看一看初始化列表长啥样。来了,兄弟们今天的优质小文,我们已经学习了构造函数,大家都知道构造函数是用来初始化对象的,兄弟们有没有对象?友元顾名思义,友就是朋友的意思,我们简单说一下友元函数吧。

2024-04-01 18:21:08 295

原创 Linux进程(二)

接上篇我说了单进程再操作系统是如何去调度的,接下来我们谈谈假如只有一个cpu多进程的调度吧!我们都知道cpu它肯定不只跑这一个进程,它要同时跑很多很多进程的,我们只有一个cpu那么操作系统怎么让我们的进程去执行呢?这就要说到一个东西了叫做时间片,时间片是什么呢?简单来说我们cpu调度进程的时候需要进程进行排队,这里就有小伙伴要问了,为什么要排队啊,这是因为我们要支持多进程运行啊,我只有一个cpu进程只能一个一个执行,下面我给大家画图解释一下这个就是最简单的多个进程的调度啦!

2024-03-31 12:25:22 832 1

原创 linux进程

大家学操作系统的时候,肯定被第一个拦路虎拦下过,那么这条拦路虎是谁呢?就是进程,在windows下也有进程,在Linux下也有进程,那么什么是进程呢?在这之前我想给大家谈谈操作系统!谈到这个我们得来说说冯诺依曼体系结构我们都知道我们在输入数据的时候,是从输入设备输入的,我们的数据是输入到内存的,然后内存交给cpu去处理,处理完成之后再返还给内存,让内存给输出设备。那么为什么要这样设计呢,原因总结外设这些都太慢了,如果要cpu算的话,那么就太慢了,cpu大多数时间都在等。

2024-03-26 12:48:01 408

原创 C++(二:类和对象)

类大家可以将它类比成c中的结构体,但是它与结构体不同的是可以在类中实现函数,并且它可以封装成员变量。//类成员变量int _month;int _day;//实例化return 0;这就是一个类了,其实就是新增一些语法记住就好了。

2024-03-25 16:01:35 711

原创 C++(一)

首先我们学了c,其实c是有很多的缺陷的,c是很自由的,这也导致了,c有很多不安全的地方。所以我们今天正式开始c++进阶之路吧!我们学c++,首先要拜一下我们的祖师爷 本贾尼·斯特劳斯特卢普(Bjarne Stroustrup首先我们认识一下 c++第一个命名空间的问题,这是c没有的(其实也有,c有个东西叫全局域和作用域),那么命名空间是什么呢。其实是为了解决c语言定义大量重复定义的变量的。比如以下环境。

2024-03-03 18:58:48 889

原创 数据结构(顺序表简单明了)

下面我们就不费口舌了,光会表演五连鞭是没有用的。直接上代码这里就定义了一个顺序表了。

2023-12-30 12:17:54 419 6

原创 关于冒泡排序实现任意类型的排序

这个函数能实现任意数据类型的排序,无论是int char double 还是结构体他都可以,那么它是怎么实现的呢。大家好,大家都知道排序在程序算法设计中起到了非常关键的作用,那么今天我想给大家讲讲qsort这个函数以及它的模拟实现。这里是交换的代码也是按照冒泡排序来写的,这个是一个字节一个字节的交换的所以我们要把width传过来。下面让我们看看qsort这个函数(这个函数内部是快速排序)大家可以看到这个函数有四个参数,那么这四个参数是代表着什么意思呢。大家可以看看这串代码,

2023-12-28 21:58:26 487 2

原创 C语言(结构体)

在我们学习c语言时,我们会学到自定义类型,这些自定义类型有枚举,联合体(共用体),结构体,今天而言我想讨论一下结构体。首先要学习结构体,我们得知道它是什么。其实它也是一种类型比如:你是一个学生,有学号,姓名,电话,性别。或者一本书,有作者,价格,书籍编号这些。下面我给大家定义一个就知道了。这就是一个简单的学生结构体,这个结构体成员有(性别,年纪,学号),从这里我们可以知道结构体的定义形式了吧。这就是一个结构体创建的规则了。那么我们既然创建了它,如何去使用它呢?

2023-12-02 11:03:54 849 1

原创 C语言(大端小端存储)

上次我在写数据在内存中存储的时候,提到了一个大小端的问题,最近在写linux系统编程的时候,也遇到了,所以我今天想详细写一个,关于大小端的问题。

2023-11-30 23:00:11 384 1

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

0.0,其实大家都知道,我们在使用c语言的时候存一个整形变量是非常好存的,只需要定义一个int变量就行了这样我们就定义了一个变量了,int类型的在内存中是占4个字节的,我们可以看一下这个图。同理的char类型的数据在内存中占一个字节的知道了字节,下面我们就详细讨论一下这些数据在内存中如何存储!

2023-11-28 19:47:20 920 1

原创 关于指针+-整数

在今天写任意类型的排序的时候,我发现一个问题发现自己关于指针+-的问题感觉掌握的不是很牢,在这里我想再更清楚的写一次!这里可以看到pa+1一下跳了4个字节,但是pb+1只是跳了一个字节,这就是类型不同所带来的不同。这里我分别存了2个不同类型的指针,那么将他们分别加一会是什么样的,我们可以看看。其实关于这一块,大家可能有和我一样的疑惑吧。

2023-11-18 13:47:34 15 1

原创 C语言指针(简单易懂)

有了以上知识后,我们就可以进入正题了,大家可以想一想在我们生活中,家家户户是不是都有门牌号,我们要通过门牌号才能找到我们想去的位置,其实计算机也是如此,cup要访问一个内存单元,它就要知道这个内存单元的编号,而这个编号我们就称为地址(也就是地址)。然后我们还需要知道在32位机器上,有32根地址总线,每根线有两种状态1或0,这些我们可以知道就一共有2的32次方种可能,所以就有2的32次方个地址,也就是2的32次方个编号。首先要理解指针,就必须要有内存的概念,我们知道在计算机中内存是被分为一个个内存单元的。

2023-11-15 20:50:49 37

原创 C语言扫雷游戏的基本实现

大家好,今天我们为验证数组和函数的基本掌握度,用实现一个扫雷游戏来验证。下面我将讲解扫雷游戏的详细思路。如有不足希望各位大佬谅解。1.首先大家应该都玩过扫雷吧,一个游戏应该有一个基本的菜单,那么我们可以直接使用库函数printf来实现一个简单的菜单。这里直接打印出来就可以了,我们可以看一下代码的实现。printf("*******1.开始游戏*************\n");printf("*******0.退出游戏*************\n");

2023-11-04 14:49:58 55 2

原创 数据结构:树和二叉数和完全二叉树

节点的度就是一个节点下面有多少个子节点,我们可以看上图A节点的度就是2;哪什么是分支节点呢,分支节点就是度不为0的节点,上图我们可以看出除了G,H,I,J,F之外,其余的节点都叫分支节点。大家可以看到这个就是二叉树了,因为它每个根节点都可以有两个子节点,当然这个称为满二叉树,那么二叉树有没有不满的情况呢,这是当然的。首先我们来看看什么是节点层数,节点层数顾名思义就是这个节点在第几层,上图中我们可以明显看出D层数是3。所谓二叉树就是除了根节点,所有的子节点都为二,我们来看看下面这张图(这是选自百度的一张图)

2023-11-01 22:33:59 49

原创 c语言函数传参的基本概念

函数也可以没有参数比如void Add(void)此时void的意思是Add可以不要参数,那么什么时候需要传参呢,什么时候不需要呢,这个就要根据实际情况来定了。(2)接下来我们来说一下返还类型,可见Add函数的返还类型是int,所以要用一个int变量x来接受,如果不想返还值可以使用void.还有一个就是函数的返还的类型函数的返还类型就根据实际情况来决定的,下面可以看一下这一串代码,这串代码实现一个简单的加法功能。形参(形式参数):形式上的参数,如果实参没有传过去,形参就不会开辟空间,只是形式上存在的。

2023-10-29 11:38:41 72 1

原创 Linux kill命令的方法

大家好,这里我想说一下在Linux中进程管理kill命令的使用方法,大家的第一反应是不是“杀死”没错其实我第一反应也是这个,但其实kill它是发送信号去停止一个进程的,一共有32个信号发送,其中9 和 19信号是必须强制接受的,这个也避免一些病毒的进攻,我想停止一个进程直接kill - 9 跟他的id就可以直接停止。比如我们想关闭第一个进程直接kill - 9 1就行了。

2023-10-24 22:48:07 35 1

原创 C语言一维数组的概念

辟一串空间,然后往这个空间里存数据元素,我们可以看一下上面这一张图代表向内存申请32个字节(这里我们用int类型创建)一个int占4个字节,所以不难得出32/4=8,所以这个数组里可以放八个数据元素,下面我们来看一下代码实现。但是这里需要注意的是数组的下标是从0开始的,所以我的int i 初始化是为0的,所以屏幕上打印了1。然后大家可以看他的地址大家看一下,每个地址是隔了4个字节,所以也印证了上面的一句话int是4个字节的。数组:一组相同元素的集合,并且元素是连续存储的。意思就是在内存空间中开。

2023-10-24 22:32:31 50 1

空空如也

空空如也

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

TA关注的人

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