自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Poison丶

娃语文不好!!!哭唧唧!!!

  • 博客(20)
  • 收藏
  • 关注

原创 访问者模式 - 行为型设计模式

访问者模式 - 行为型设计模式引言本文旨在通过模拟业务场景,逐步衍生出该设计模式。关于访问者模式本身的概念、优缺点、与其他模式对比等介绍较少,可参考最后一小节的其他文章列表进行详细了解。一、背景引入1.我们有很多种形状我们有很多种形状。形状有一些功能,例如获取类型。type Shape interface { GetType() string // 获取形状的类型 // ...}现在有三种类型的形状:正方形圆形矩形它们的实现分别为:// Square 正方形type

2021-01-15 15:45:06 190

原创 进程——孤儿进程与僵尸进程

在学习进程时,一定会学到fork函数创建子进程,由此引出两个概念:孤儿进程 当父进程已经退出而子进程仍在运行时,此时子进程就相当于一个孤儿,即为孤儿进程。孤儿进程会立即被init进程(1号进程)收养,此后的收尾工作均由init进程负责。 形象的解释,init进程就好像一个民政局,每出现一个孤儿,init会立即领养,知道该孤儿完成自己的所有使命,凄凉地结束了它的一生时,init会代表党和政府

2017-07-03 10:29:30 488

原创 粘滞位——文件/目录的删除和移动

粘滞位 粘滞位(Stickybit),又称粘着位,是Unix文件系统权限的一个旗标。 最常见的用法是在目录上设置粘滞位,使得只有目录内文件的所有者或者root用户才可以删除或移动该文件。 那么问题来了,对一个文件或目录的删除和移动,需要什么权限?读?写?可执行? 下面小编对此进行研究。首先,用root创建一个权限为777的目录root_dir 用普通用户进入该目录,并在其中创建目录d

2017-06-28 17:30:12 879

原创 Linux之用户与用户组的创建与删除

开门见山,介绍最简单的用户与用户组创建、删除的命令。 在Linux中创建用户(以创建用户myself为例)使用如下命令(需以root权限创建): useradd myself设置myself用户密码(更改时也可在root权限下使用此语句直接更改密码): passwd myself删除该用户: userdel myself创建用户组(以mygroup为例): groupadd

2017-06-28 15:46:54 682

原创 Linux——权限详解(目录详解)

运行环境:VMware-CentOS7在终端中输入ls -l或ll即可查看当前目录下所有文件的详细信息: )在第一个字段中,我们可以看到’-‘、’d’、’r’、’w’、’x’几种字符,小编用下图来解释第一个字段: 常见字符含义如下: 1. ‘-‘——代表普通文件 2. ‘d’——代表目录文件 3. ‘r’——代表可读 4. ‘w’——代表可写 5. ‘x’——代表可执行

2017-06-28 10:57:24 663

原创 Linux——使用mail发送邮件给外部邮箱

相信大家都用过电子邮箱,例如网易163、腾讯QQ、Gmail等等。 在上一篇博客里小编剖析了crond&crontab,然后小编就突发奇想,如果想让linux定时将某信息发送给某邮箱要怎么做呢?经过不断的查阅学习与测试之后,小编来这里总结一下(以163邮箱为例发送邮件)。 第一步:账号准备 首先,要有自己的163邮箱,并在设置中将服务开启,如下两张图: 第二步:密码

2017-06-27 16:25:40 1133

原创 Linux定时任务之crond/crontab

定时任务,顾名思义即固定一段时间执行一次某任务。 例如手机设置的闹钟、定时开关机等都属于定时任务,那么Linux要如何设置定时任务呢?crontab 首先认识crontab,该词来源于希腊语chronos(χρόνος),原意是时间。 它是一个命令,常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。 该命令从标准输入设备读取指令,并将其存放于“cronta

2017-06-26 22:57:21 580

原创 Linux文件搜索——find命令剖析

找不到文件怎么办?不记得文件名怎么办?不记得路径怎么办?……今天小编带大家学习find命令的强大功能!在窗口中输入如下命令来查看find指令的详细信息[jing@localhost ~]$ find --help信息如下(): 这里小编简单剖析下这些信息: 用法: find [path…] [expression]默认的path(查找路径)是当前目录(./); 默认的expression(表达

2017-04-23 17:33:01 532

原创 Linux之文件元信息的三个时间

As we all know,Linux下一切皆文件! 小编最近在学习linux操作系统,在学习到stat+文件名命令时,发现有三个时间不知何物经过多番折腾研究,在这里简单讲解下,如果有不对的地方希望大家指出来噢n(≧▽≦)n! 首先在Code文件目录下新建test.c文件,输入“stat test.c”查看文件元信息如下图所示: 这里可以看到三个时间分别是Access、M

2017-03-20 12:20:46 930

原创 对称矩阵的压缩存储

对称矩阵,相信大家都有所了解,即元素为以主对角线为对称轴对应相等的矩阵。故而会有许多相等的元素。 这种矩阵如果很大,存储时必然会浪费很多空间,本文讲解对称矩阵的压缩存储。 以如下4*4对称矩阵为例: 本文考虑只存储对称矩阵的下三角元素,即下图灰色部分 那么很显然,我们可以将这样一个对称矩阵压缩存储到一个一元数组中,从而节省较多的空间,接下来我们分析一下如何存储。 分析:第一行有一个

2017-03-06 18:27:51 5169

原创 C++中的继承特性(2)

4.static成员与继承 在类中,无论创建了多少个对象,被static修饰的成员变量永远只有一个,那么派生类是否也继承了这个静态成员变量呢? 假设一:派生类继承了这个变量,且与基类共享同一个静态成员; 假设二:派生类拷贝了这个变量,不与基类共享,是派生类所有对象共有的static静态成员。 这一点其实很好证明。由上一篇博文我们基本理解了派生类的构造函数和析构函数,那么这里就利用构造函数和析

2016-10-25 12:56:24 341

原创 C++中的继承特性(1)

1.什么是继承? 首先,继承是什么?继承可以简单理解为孩子继承了父母双亲的基因,在拥有父母某些特性的同时,又有自己独立的特性。 在C++中,继承是类与类之间的继承,即某个类可以继承它类的成员变量、成员函数,同时又可以拥有自己独有的成员变量、成员函数。 继承定义格式如下:class <派生类类名>: <继承方式> <基类类名>{};派生类即新生成的类,相当于孩子,又称子类;基类即原有的类,相当

2016-10-24 13:37:31 824

原创 二进制位相关知识

问题1:将某整数二进制中的奇数位和偶数位互换奇偶位交换时,可: 偶数位与0得到奇数位,再左移一位成为目标值的偶数位; 原数字奇数位与0得到偶数位,再右移一位成为目标值的奇数位; 得到的两数字相或,最终得到目标值。0x55555555 表示 01010101 01010101 01010101 01010101 0xaaaaaaaa 表示 10101010 10101010 1010101

2016-07-29 22:19:18 437

原创 在一个整型数组中找孤立的数字

整型数组由于长度的问题,将在主函数中直接赋值以方便测试函数功能。find_sole函数参数为排序好的整型数组,数组长度。本程序中,排序方法为选择排序。#includeint main(){ int* sort(int*, int);//排序整型数组,以方便找孤立数字 void find_sole(int *, int);//查找孤立数字 int arr[] = { 5, 4,

2016-07-26 00:04:18 402

原创 斐波那契数的两种求法(效率对比)

对于斐波那契数列的两种求法的效率对比#includeint main(){ int fib_dgui(int n);//递归算法 int fib(int n);//循环算法 int ret = 0, n; printf("请输入要求的斐波那契数-> n = "); scanf("%d", &n); int start, finish; start = clock(); re

2016-07-25 23:58:42 521

原创 string.h常用函数

目前所编写到的,所能简化的最终版(如有不合适的地方,欢迎指导):strlen:int my_strlen(char *src){ int len = 0; while (*src++){ len++; } return len;}strcpy:char *strcpy(char *dest, const char *src) { char *ret = dest; w

2016-07-25 22:07:49 324

原创 代码执行时间计算(宏和函数的执行时间差别)

#define INFORMATION \ printf("行数:%d---位置:%s---日期:%s---时间:%s\n",\ __LINE__, __FILE__, __DATE__, __TIME__)#define name_cat(str1,str2) str1##str2#define STC(NAME) printf("本次输出"#NAME"的值为%d\n",NAME)

2016-07-22 16:29:09 1571

原创 利用二进制位求平均值

//利用二进制位中相同的值 加上 不同的值的1/2,从而达到求取平均值的效果。#includeint main(){ int average(int, int); int a = 10, b = 20; //0000 1010; 0001 0100 int c = average(a, b); printf("%d\n", c); printf("The average of

2016-07-22 15:41:35 1687

原创 shutdown命令

shutdown 命令用法:SHUTDOWN [-i | -l | -s | -r | -a] [-f] [-m \\computername] [-t xx] [-c "comment"]      [-d up:xx:yy]没有参数 显示此消息(与?相同)-i 显示GUI界面,必须是第一个选项-l 注销(不能与选项-m一起使用)-s 关机-r 重

2016-07-08 13:51:54 395

原创 C/C++学习之路

也许有很多人跟我一样,一直有很多梦想,一直都想去实现,即便从未放弃过,但也从未开始过。我就是这样一个人,一直有很多,我不断坚持的梦想,但总是被自己以种种借口推脱,即便我仍然认为那些借口是可以理解的。大二的后半学期,很多培训班开始来我们专业宣传,给我们灌输一种现在不报班就来不及了的思想。我一直是一个有主见的人,至少我自己是这样认为的。所以在一开始总是抗拒的。不过后来还是被说服了,觉得

2016-07-08 13:42:35 446

空空如也

空空如也

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

TA关注的人

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