- 博客(33)
- 收藏
- 关注
转载 python快速入门
基本使用0.字符集#coding=utf-8 #这样才支持中文,不然默认使用ascII,放在正式程序的第一行1.开头#!/usr/bin/Python2.注释单行:# 多行:’‘’ ‘’‘ 或”“” “”“3.printprint ‘i am zjk’, #最后加逗号,输出的内容不换行,不加逗号自动换行,但是这样会增加一个空格print “i a
2017-08-22 17:34:42
478
转载 Linux上的RAID
Linux上的RAID有三种:硬RAID(hard-RAID)通过专门的RAID控制芯片实现。一般表现为RAID卡,并且卡上有专用的、独立于主板BIOS的固件(一般也称其为BIOS)。伪RAID(fake-RAID)通过SATA/IDE等磁盘控制芯片附带的RAID固件(集成于主板的BIOS中)实现,所以又称为"bios-RAID"。典型的例子就是Intel ICHxR系列南桥芯片。软RAI
2017-03-06 11:40:07
885
转载 如何调试Shell脚本
1) 检查语法错误:一般来说我们可以通过修改shell脚本的源代码,令其输出相关的调试信息来定位错误,那有没有不修改源代码来调试shell脚本的方法呢?答案就是使用shell的执行选,下面是一些常用选项的用法:-n 只读取shell脚本,但不实际执行-x 进入跟踪方式,显示所执行的每一条命令-c "string" 从strings中读取命令“-n”可用于测试shell脚本是
2016-12-15 11:07:29
1012
转载 linux下的find文件查找命令与grep文件内容查找命令
在使用linux时,经常需要进行文件查找。其中查找的命令主要有find和grep。两个命令是有区的。 区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。 (2)grep是根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。 一.find命令
2016-11-23 15:16:24
494
转载 linux egrep 查询文件内容
1、从文件内容查找匹配指定字符串的行:$ grep "被查找的字符串" 文件名2、从文件内容查找与正则表达式匹配的行:$ grep –e “正则表达式” 文件名3、查找时不区分大小写:$ grep –i "被查找的字符串" 文件名
2016-11-23 14:51:54
1649
转载 malloc实现原理
malloc()是C语言中动态存储管理 的一组标准库函数之一。其作用是在内存的动态存储区中分配一个长度为size的连续空间。其参数是一个无符号整形数,返回值 是一个指向所分配的连续存储域的起始地址的指针。 动态内存分配 就 是指在程序执行的过程中动态地分配或者回收存储空间的分配内存的方法。动态内存分配不像数组等静态内存分配方法那样需要预先分配存储空间,而是由系统根据 程序的需要即时分配,且
2016-08-23 14:34:55
2616
原创 HTTP1.0和HTTP1.1区别及http状态码
HTTP1.0和HTTP1.1的主要区别1,HTTP/1.0协议使用非持久连接,即在非持久连接下,一个tcp连接只传输一个Web对象,;2,HTTP/1.1默认使用持久连接(然而,HTTP/1.1协议的客户机和服务器可以配置成使用非持久连接)。在持久连接下,不必为每个Web对象的传送建立一个新的连接,一个连接中可以传输多个对象!HTTP目前三个版本:HTTP0.9、HTTP1.
2016-08-19 10:13:49
5480
转载 windows进程间通信
原文地址:http://blog.csdn.net/weiwangchao_/article/details/7104940摘 要: 随着人们对应用程序的要求越来越高,单进程应用在许多场合已不能满足人们的要求。编写多进程/多线程程序成为现代程序设计的一个重要特点,在多进程程序设计中,进程间的通信是不可避免的。Microsoft Win32 API提供了多种进程间通信的方法,全面地阐述了
2016-07-28 13:58:56
885
原创 创建动态链接库,使用自己的dll中的排序算法,用Qt将排序用时在界面上用表格的形式呈现出来
首先创建动态链接库打开vs2013,创建win32控制台应用程序项目,勾选dll及导出符号完成后,就可以了然后打开Qt,,创建Qt项目,都选默认值,最后将Vs项目生成的.dll拷到Qt项目.exe文件所在的文件目录下(或者将Vs项目生成的.dll文件所在的目录设置环境变量)Vs头文件代码:// 下列 ifdef 块是创建使从 DLL 导出
2016-07-19 23:31:41
2470
原创 死锁产生的原因和必要条件及预防死锁的方法及死锁的检测与解除
产生死锁的原因和必要条件:产生死锁的原因:1.竞争资源。当系统中供多个进程共享的资源如打印机,公用队列等,其数目不足以满足诸进程的需要时,会引起诸进程对资源的竞争而产生死锁。2.进程推进顺序非法。进程在运行过程中,请求和释放资源的顺序不当,也同样会导致产生进程死锁。如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。其次,
2016-07-17 00:01:56
11827
原创 进程间通信:管道及命名管道(代码实现)
管道:1.管道是半双工的,数据只能向一个方向流动;需要双方通信时,需要建立起两个管道; 2.只能用于父子进程或者兄弟进程之间(具有亲缘关系的进程); 3.单独构成一种独立的文件系统:管道对于管道两端的进程而言,就是一个文件,但它不是普通的文件,它不属于某种文件系统,而是自立门户,单独构成一种文件系统, 并且只存在
2016-07-07 21:03:31
6925
1
原创 进程间通信:共享内存(代码实现)
共享内存:1.共享内存就是允许两个不相关的进程访问同一个逻辑内存; 2.共享内存是在两个正在运行的进程之间共享和传递数据的一种最有效的方式; 3.不同进程之间共享的内存通常安排为同一段物理内存; 4.共享内存不提供任何互斥和同步机制,一般用信号量对临界资源进行保护;
2016-07-06 18:17:36
13635
1
原创 进程间通信:消息队列(代码实现)
消息队列:1.一种从一个进程向另外一个进程发送数据块的方法; 2.每个数据块都被认为是有一个类型,接受者进程接收的数据块可以有不同的类型值; 3.消息队列的读取不一定是先入先出; 4.消息队列的生命周期是随内核的; 5.每个消息的最
2016-07-05 23:21:15
4391
原创 替换空格(将字符串中的空格替换为20%)
题目:请实现一个函数,把字符串中的每个空格替换成“20%”,例如输入“We are happy.”,则输出“We%20are%20happy.”。分析:void test(string &str,int size){ if (size <= 0) { return; } int count = 0;//定义一个变量来计数空格的数量 for (int i = 0; i
2016-06-10 21:07:21
4036
原创 二维数组中的查找
问题描述:在一个二位数数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。例:下面的二维数组满足该情况,如果在该数组中查找5,则返回true,若查找15,则返回false 1 2 3 4 5 2 5 6 7 8 9 10 11
2016-06-08 23:26:16
1158
原创 操作系统处理机调度及常见的调度算法
操作系统处理机调度及常见的调度算法(先来先服务调度算法(FCFS),短作业(进程)优先调度算法,高优先权优先调度算法,时间片轮转算法)
2016-06-05 22:17:18
13565
1
原创 PCB(进程控制块)以及Linux下的进程控制块task_struct
进程控制块中的信息:1.进程标识符:进程标识符是惟一地标识一个进程。一个进程通常有两种标识符 (1).内部表示符:在所有的操作系统中,都为每一个进程赋予了一个惟一的数字标识符,它通常是一个进程的序号。设置内部标识符主要是为了方便系统使用。 (2).外部标识符:它由创建者提供,通常是由字母,数字组成,往往是由用户(进程)在访问该进程时使用。为了描述进程的家族关系,还应设置父进程标识和
2016-06-04 18:53:36
3060
原创 外观模式实例之文件加密
代码;package child;class CipherMachine:public class CipherMachine { public String encrypt(String plainText) { return plainText; }}class FileReader:public class FileReader { pu
2016-05-31 10:45:28
5590
原创 组合模式实例之文件浏览
代码:package MyElement;public abstract class AbstractFile { public abstract void add(AbstractFile element); public abstract void remove(AbstractFile element); public abstract void display();
2016-05-31 10:36:13
4015
原创 Linux下安装gcc,gdb,MySQL以及vim的配置
gcc:linux下可以自动安装:yum install gcc 编译成可执行文件:gcc -o test teat.cgdb:linux下自动安装:yum install gdb. 调试文件:gdb test.c 设置断点:(gdb)break main 退出gdb:(gdb)q 执行:run 单步执行:step 打印:print 显示:display。
2016-05-28 23:33:41
1507
原创 用C++实现一个哈希桶(插入,删除,寻找)
#include#include#includeusing namespace std;struct DefaultHashFuncString //构造仿函数{ size_t operator()(const string & key) { size_t ret = 0; for (size_t i = 0; i < key.size(); i++) { r
2016-05-24 20:51:00
953
原创 用C++实现一个哈希表(插入,删除,查找)
#include#includeusing namespace std;enum status{ EXIST, DELETE, EMPTY,};template struct hashfunc{ size_t operator()(const K & key) { return key; }};struct hashfuncstring { size_t
2016-05-24 20:46:28
4584
原创 Linux系统下find指令详细用法与示例及Linux下的atime ,ctime,mtime
Linux下find命令在目录结构中搜索文件,并执行指定的操作。Linux下find命令提供了相当多的查找条件,功能很强大。即使系统中含有网络文件系统,find命令在该文件系统中同样有效。 在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间。命令格式:find 路径 -命令参数 [输出形式]-name 按照文件名查找
2016-05-22 11:53:17
2948
原创 用C/C++实现一个日期类,重载运算符=,==,+,-,++,--,>,>=,<,<=等
#include#includeusing namespace std;class Date{public: Date(int year, int month, int day) //构造函数 :_year(year) ,_month(month) ,_day(day) {} Date(Date & d) //拷贝构造 :_year(d._year) ,
2016-05-21 23:21:32
21113
2
原创 操作系统课程设计银行家算法
#include#includeusing namespace std;typedef struct Arithmetic{ char name; int Max[5]; int Allocation[5]; int Need[5]; int OP;}ari;typedef struct In{ ari a[5]; int size;}in;int avi[5]
2016-05-19 21:57:25
4871
原创 注释转换(C++小项目)
将所有以C语言格式的注释转换成C++注释格式,利用文件指针打开文件并读写文件,input,output导入导出文件,转换后不得改变原文件的含义并且编译连接无错误,所有的转换必须符合语法规则,注释转换支持注释嵌套。#include#include#includetypedef enum ConverState{ c_open, c_close}ConverState;typedef
2016-05-19 21:46:26
535
原创 输出乘法口诀表
void test(){ int i = 0; int j = 0; for(i = 1;i<=9;i++) //循环条件,外层循环9次 { for(j = 1;j<=i;j++)//内层循环,循环i次 { printf("%d*%d=%2d ",i,j,i*j); } printf("\n"); } return 0;}
2016-05-19 21:39:10
366
原创 赋值运算符函数
当写一个赋值运算符函数时,首先要关注几点(第一种写法):1.返回值的类型是不是应该声明为该类型的引用,并在函数结束前返回实例自身的引用,只有这样,才支持连续赋值例如3个list的实例l1,l2,l3,语句l1=l2=l3编译通过。2.实例自身已有的内存是不是应该释放,如果在分配内存之前没有释放,程序将出现内存泄漏。3.传入的参数是不是应该应该声明为常量引用以避免实参传给形参时调用拷贝构
2016-05-18 23:26:16
693
原创 判断1000年---2000年之间的闰年
判断1000-2000年之间的闰年,判断一年是否为闰年的标准是year%4==0同时year%100!=0,或者year%400==0void test(){ int count = 0; int year = 0; for(year = 1000;year <=2000;year++) { if(year % 4 == 0) { if(year % 100 != 0)
2016-05-18 13:20:54
1736
原创 不使用任何变量编写是strlen函数(递归)
strlen函数很简单,大家都能熟练的应用,可是如果不允许调用库函数,也不允许使用任何全局或局部变量来编写一个MyStrlen也许就没有那么简单了,当然,递归函数就可以来解决这个问题了size_t MyStrlen(const char * str){ assert(str); //参数入口检验 if(*str=='\0') r
2016-05-18 13:06:24
1038
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人