自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (2)
  • 收藏
  • 关注

原创 深入理解计算机系统--第八章异常控制流

异常控制流概念:通常情况下控制流是平滑的,但是也有突变的情况。而这种有突变的控制流就是异常控制流。ECF的好处:8.1 异常8.1.1 异常处理8.1.2 异常的类型中断:中断的异常处理一般称为中断处理程序。收到中断时,会先把当前指令完成后,再讲控制流突变到中断处理程序。2.陷阱陷阱是有意执行一条命令的异常,最重要的用途是给用户程序提供系统调用。...

2021-10-10 14:54:27 606

原创 结构体对齐

1.为何要对齐计算机系统对基本类型数据在内存中存放的位置有限制,它们会要求这些数据的起始地址的值是某个k值的倍数,这就是所谓的内存对齐,而这个k则被称为该数据类型的对齐模数。这种强制的要求一来简化了处理器与内存之间传输系统的设计,二来可以提升读取数据的速度。比如有这么一种处理器,它每次读写内存的时候都从某个8倍数的地址开始(64位系统,每次读写内存都能操作8字节数据,因此地址也是8的倍数),一次读出或写入8个字节的数据,假如软件能保证一个基本类型的数据都从8倍数地址开始,那么读或写一个数据就只需要一次内

2021-08-26 10:45:33 137

原创 二维数组作为形参

首先需要理解编译器对于二维数组是如何寻址的:对于数组 int p[m][n];如果要取p[i][j]的值(二维数组p中的第i行第j列的值),编译器是这样寻址的:先找到数组名为p的地址(p),根据数组每行有多少列(n)和所需寻址的第i行,得出所需寻址的行偏移(p+i*n),即所在行的首地址;再根据所需寻址的第j列,得出最终寻址的地址值(p + i*n + j)。因此如果想要采用数组下标的形式作为形参,则必须给定n值(该即二维数组一行有多少列),否则无法定位出所寻址行的首地址,则无法进行正常的寻址。

2021-08-26 10:42:39 5503

原创 深入理解计算机系统----第六章存储器层次结构

随机访问存储器(RAM)分为两类:静态RAM(SRAM)和动态RAM(DRAM)。

2021-06-20 16:33:17 2287

转载 linux进程间的通信

进程间通信的6种方式在linux中进程间通信的方式一共有六种:管道、消息队列、共享内存、信号、信号量、socket。每个进程的用户地址空间都是独立的,一般而言是不能互相访问的,但内核空间是每个进程都共享的,所以进程之间要通信必须通过内核。1.管道如果你学过 Linux 命令,那你肯定很熟悉「|」这个竖线。$ ps auxf | grep mysql上面命令行里的「|」竖线就是一个管道,它的功能是将前一个命令(ps auxf)的输出,作为后一个命令(grep mysql)的输入,从这功能描述,

2020-08-02 14:28:38 933

原创 LeetCode(力扣)3. 无重复字符的最长子串。C语言解法

整数反转1.题目给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串

2020-07-11 15:39:54 991

原创 tcp和udp总结

tcp udp的介绍,差异和一般适用于什么场景

2020-06-29 09:32:05 115

原创 变量:全局变量,局部变量,静态变量,动态变量

全局变量,局部变量,静态变量,动态变量。

2020-06-29 09:25:09 3816

原创 LeetCode(力扣)7.整数反转。C语言解法

整数反转1.题目给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/reverse-in

2020-06-14 21:46:31 441

原创 LeetCode(力扣)2.两数相加。C语言解法

两数相加1.题目给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807来源:力扣(LeetCode)链接:https://

2020-06-14 16:47:06 1066

原创 LeetCode(力扣)1.两数之和。C语言解法

两数之和1.题目给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/two-sum

2020-06-13 16:52:04 1368 4

原创 C语言自定义打印宏函数

在调试大型项目中,打印信息分级和指出打印所在处,更方便于解决问题。查阅网上的文章并加上自己的修改,实现了个简单的宏打印函数来达到目的。宏函数实现在头文件中,加上了打印级别来控制打印是否输出,打印级别的设定需在调用的.c文件中自定义(这样做是为了能实现不同文件的打印级别能不一样,在调试指定文件或模块的问题是,能起到屏蔽其他无关代码打印的作用)。typedef.h源码:#ifndef _TYP...

2018-08-27 22:29:14 6763

原创 ubi文件系统升级报错“please,frist detach mtd2 form ubi0”

解决方法,执行命令#ubidetach -m 2 再升级便可。原因,mtd2已经被使用挂载成ubi格式。

2017-04-06 18:03:24 3050

我和开发有个约会.zip

我和开发有个约会.zip

2021-06-14

c语言的程序一个

c语言的程序一个

2012-11-23

空空如也

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

TA关注的人

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