自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 shell脚本语法

shell脚本基本语法默认一行处理一条命令,但也可以用;分割多条命令,按顺序执行。脚本文件中第一行必须用#! path-to-shell指定所用的shell。除了第一行之外的#都是注释的开始标记,注释此行中#之后的内容脚本要有执行权限,最好以sh作为后缀变量变量都是字符串定义变量时不要有空格:variable=value命令替换可以从命令输出中提取信息,并赋...

2018-06-30 21:26:23 12339

原创 内核第一阶段初始化

初始化阶段1包括从内核入口1MB处的startup_32到公共的start_kernel函数=============================== arch/i386/kernel/head.S ================================= 50 /* 51 * 32-bit kernel entrypoint; only used by the boot C...

2019-06-25 06:04:29 763

转载 Why the “volatile” type class should not be used

Why the “volatile” type class should not be usedC programmers have often taken volatile to mean that the variable could be changed outside of the current thread of execution; as a result, they are s...

2018-12-03 20:49:52 273

原创 Bash常见的变量

Bash常见的变量SHELL: 当前shell程序的路径。BASH_SUBSHELL:当前在第几层子shell,从0开始数。

2018-12-01 20:35:10 379

转载 shell中的变量扩展

1.Shell中变量的原形:${var}一般来说,var和var和var和{var}效果一样,但当你要显示变量值加一些字符时,就会出错,他会把$后的一整个单词作为扩展对象。这时应该用变量的原形:${var},即是加一个大括号来指明变量名称的范围[root]# aa='ajax'[root]# echo $aaajax[root]# echo $aa_AA[root]# echo $...

2018-11-06 07:28:59 1595

原创 插入排序

插入排序介绍插入排序将待排序数组分成两部分:已排序部分和待插入部分。将带插入部分逐个插入到已排序序列中。它是in-place的,时间复杂度O(n2),空间复杂度O(1)。循环不变式:在将第i个元素插入之前,array[0~i-1]是已经有序的。实现输入: 待排序数组array。可以随机访问它的每个元素,和它的长度。输出: 按非下降顺序排序的数组array。V1最直观的,在插入第i...

2018-10-10 16:03:45 137

原创 shell输入输出

shell 输入输出命令行参数在shell脚本中可以使用$n来引用命令行中指定的参数。$0是脚本名字,$1是第一个参数,$2是第二个…以此类推直到$9。命令来行上指定的参数以空格隔开,如果需要包含空格的参数,要用引号扩起来。如果需要指定的参数不止九个,之后的变量的数字要用大括号扩起来,比如${10}。在使用命令行参数之前,需要检查参数是否被赋值。特殊参数变量$#含有脚本运行...

2018-06-30 21:21:46 1158

原创 ubuntu自定义快捷键

ubuntu快捷键定义设置Ctrl+Alt+T打开的最大化的终端模拟器System Settings –> keyboard –> Shortcuts –> Custom Shortcuts 点击”+”来添加一个快捷键。 Name: Max Terminal(可以自己定义) Command: gnome-terminal –maximize点击”Apply”,...

2018-06-19 17:36:18 7827

原创 Linux文件IO详解

文件IO不带缓存的IO函数:open, read, write, lseek和close。每个函数对应内核的一个系统调用,这些函数不是C语言标准,但属于POSIX接口。文件描述符对Linux而言,所有的打开文件都由文件描述符引用。文件描述符是一个非负整数。当用open,creat打开文件时,返回文件描述符,对文件的读写操作通过文件描述符进行。 按照惯例,文件描述符0与进程的标准输...

2018-06-04 19:47:26 3301

原创 C++中const用法详解

C++中的constconst 对象const最简单的用法是定义一个无法修改的变量。const对象一旦创建后其值就无法改变,所以const对象必须在定义的时候进行初始化。const int i = get_size(); // 正确: 运行时初始化const int j = 40; // 正确: 编译时初始化const int k; ...

2018-05-21 19:53:50 527

原创 高级shell命令

高级命令用户/etc/passwd并不是一个用来保存密码的文件,而是用来保存用户信息的文件。保存密码的是/etc/shadow。 /etc/passwd的字段包括:登录用户名、用户密码、用户UID、用户的组ID、备注、HOME目录的位置和默认shell。 千万不要直接修改/etc/passwd文件,改崩了可能连root用户都登不了系统。要使用专用的命令来更改用户设置。usera...

2018-05-07 11:52:20 1221

原创 基本shell命令

基本shell命令帮助手册man: 查看命令、系统调用和库函数等帮助手册。info: 类似man,但不是以分页的形式显示。-help选项: 大多数命令都有这个选项,显示其使用方法。文件和目录pwd: 查看当前工作目录cd: 改变工作目录.代表当前目录..代表上级目录-代表上次所在的目录ls: 列出当前目录中的文件-l: 长列表形式,输入各个...

2018-05-01 15:57:27 235

原创 makefile指令

条件指令和引入指令条件指令用来控制make执行流程的条件具有多种形式,比如“是否已定义”或“是否等于”。 条件指令的基本语法: if-condition text if the condition is true else text if the condition is false endif 其中的if-condition可以是: ifdefvariable-nam...

2018-04-13 11:40:42 574

原创 makefile简介

Makefile简介背景程序设计通常遵循着一个极为简单的惯例:编辑源代码文件、将源代码文件编译成可执行文件以及对成果进行调试。make程序可以让将一个项目中的源文件编译成可执行文件之类的工作自动化。相对于脚本,make的优点是:它可以根据文件之间的依赖关系和时间戳判断应该重新执行那些步骤,以产生需要的程序。有了这个信息,make可以优化编译的过程,跳过非必要的步骤。基本构成...

2018-04-13 11:39:46 315

原创 makefile函数

函数GNUmake支持内置函数和用户自定义函数。函数调用看起来像是变量引用,只不过多了用逗号隔开的参数而已。用户自定义函数用户自定义函数是带有参数的宏,宏定义中的$1、$2...是函数的形参,宏的定义就是函数的定义。调用一个自定义函数的形式是:$(callmacro-name[, param1 ...])。 call是一个内置函数,call扩展它的第一个参数并把其他参数依次替...

2018-04-13 11:39:06 273

原创 makefile规则

makefile中的规则规则的一般形式:target: normal-prerequisites | order-only-prerequisites ; commands commandsmakefile的构成主体是各种规则。无论是什么形式的规则,都会描述一个三元组:目标、必要条件、命令。一个规则可以同时描述一个或者多个甚至无数个工作目标(其实是无数个规则构成的模式),工...

2018-04-13 11:38:06 286

原创 makefile变量

makefile 变量与宏变量和宏其实说的是同一东西。一个变量的内容是一个字符串,从一个变量名获得变量内容的过程叫做变量的扩展,用()或者()或者()或者{}扩住变量名即可。而不想编程语言那样,使用变量名就能引用变量的值。变量的类型make的变量有两种:简易变量和递归扩展的变量。变量的定义是一个赋值动作,把等号右边的内容赋给左边。这里等号可以有多种::=、=、?=,他们决定了怎样赋...

2018-04-13 11:31:45 301

原创 正则表达式

正则表达式1.概览正则表达式由两个基本组成部分:一般字符和特殊字符。一般字符指的是任何没有特殊意义的字符。特殊字符成为元字符,如下表所示。某些情况下,特殊字符也会被视为一般字符。 字符 BRE/ERE 含义 \ both 用来关闭后续字符的特殊含义,或者开启后续字符的特殊含义。比如\(...\)与\{...\} . both 匹配任...

2018-03-27 17:00:15 247

原创 GPIO

GPIOSTM32

2017-12-31 14:46:42 904

原创 多态

多态机制

2017-12-11 10:41:06 271

原创 句柄类

句柄类

2017-12-09 21:31:54 261

原创 重载new和delete

重载new和delete

2017-12-04 14:41:42 390

原创 GCC内联汇编

GCC内联汇编基本内联语法

2017-11-15 22:52:02 337

原创 互斥:软件算法

互斥:软件算法 操作系统 互斥软件方法的实现方式能够解决并发进程在一个或者多个共享内存的处理器上执行的问题。这些方法通常是基于在访问内存是基本互斥条件的假设。即,尽管访问的顺序没有具体安排,同时访问内存中的同一个地址的操作被内存仲裁串行化(没有丢失)。此外,没有考虑硬件、操作系统或是编程语言的支持(相对通用)。

2017-11-06 16:23:21 1855

原创 Makefile自动产生依赖

Makefile自动产生依赖

2017-11-03 11:06:49 292

原创 Makefile函数

Makefile函数内置函数所有的函数具有如下的形式: $(function-name arg1[, argn])1.call$(call macro-name[, param1 ...]) call是一个内置于make的函数,call会扩展它的第一个参数并把其余参数依次替换到出现$1 $2 …的地方。macro-name可以是任意的宏或者变量

2017-11-01 19:01:03 339

Linux下C++终端贪吃蛇

贪吃蛇在Linux终端中的C++实现。使用了C++的类的抽象和封装,有助于强化对类的理解。本项目具有相当大的扩展性,可以根据自己的思路增加游戏的内容,提高可玩性。

2018-06-04

ffmpeg最新源代码

ffmpeg库: libavcodec,libavformat,libavdevice,libavutil,libavfilter.等

2018-03-09

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

TA关注的人

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