自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

零丁若叹

学会仰望天空,更要脚踏实地

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

原创 python使用syslog模块

syslog模块是在unix环境下工作的模块,不能用于windows,在windows环境下可以使用logging模块。syslog模块可以用于记录系统运行的信息,这个模块提供的方法有,syslog(priority,message),它将message送入系统日志,priority的默认选项为LOG_INFO,openlog([ident[,logoption[,facility]]]),它用于

2014-02-24 23:50:40 9260

原创 python实现UDP通信

UDP,用户数据报传输协议,它位于TCP/IP协议的传输层,是一种无连接的协议,它发送的报文不能确定是否完整地到达了另外一端。UDP广泛应用于需要相互传输数据的网络应用中,如QQ使用的就是UDP协议。在网络质量不好的情况下,使用UDP协议时丢包现象十分严重,但UDP占用资源少,处理速度快,UDP依然是传输数据时常用的协议。下面是用python实现UDP服务器的代码:#!/usr/bin/e...

2014-02-23 23:25:11 40355 7

原创 awk基础

1.awk是很好的文本处理工具,简化了一般文本处理的工作。使用awk有以下三种方式:(1)       使用awk命令行(2)       使用-f选项,后面接上文件名(3)       使用命令解释器#!/bin/awk –f然后使用chmod 命令给这个脚本文件加上可执行权限,就可以调用这个脚本了2.awk中的变量(1)标量变量    awk的变量不需要

2014-02-23 22:26:04 1079

原创 perl文件测试

perl中文件测试的操作符及意义测试文件的权限:-r 文件或者目录对目前(有效的)用户是可读的-w 文件或者目录对目前(有效的)用户是可写的-x  文件或者目录对目前(有效的)用户是可执行的-o   文件或者目录有对目前(有效的)用户拥有-R 文件或者目录,对实际的用户或组来说是可读的-W 文件或者目录,对实际的用户或者组来说是可写的-X 文件或者目录,对实际的用户

2014-02-23 21:32:44 1196

原创 正则表达式基础

正则表达式是对字符串操作的逻辑表示,可以用来查找匹配文本。正则表达式由一般字符和特殊字符组成,特殊字符又称为元字符,常见的元字符有:\    用来关闭后续字符的意义                       .      匹配任何单个字符    *    匹配任意多个其前面出现的字符         ^     在行或者字符串的起始处匹配$    在行或者字符串的末尾处匹配

2014-02-23 18:33:47 907

原创 python中使用POP协议

POP(Post Office Post),邮局协议,采用C/S工作模式,读取电子邮件的过程是先利用DNS协议解析POP服务器的IP地址,并连接服务器,使用USER命令将密码传入POP服务器,使用PASS命令将密码传入POP服务器,这个过程完成后,就完成了POP服务器认证,接下来可以对邮箱内的邮件做进一步的操作,python中的poplib库提供了许多方法,如stat,list等,这些方法可以查看

2014-02-23 16:07:57 2177

原创 python使用select实现异步通信

当一个服务器需要与多个客户端进行通信时,可以使用多进程或者多线程的服务器,也可以使用select模块,它可以实现异步通信。Python中的select模块包含了poll()和select(),select的原型为(rlist,wlist,xlist[,timeout]),其中rlist是等待读取的对象,wlist是等待写入的对象,xlist是等待异常的对象,最后一个是可选对象,指定等待的时间,单位

2014-02-22 23:53:23 5282

原创 python中的异常处理

在编写程序时可能会出现一些异常,比如类型错误,除零错误等,为了能捕获并处理这些异常,可以使用python的异常处理功能。python使用raise语句可以抛出异常,对于可能出现异常的语句块,用try语句包围起来,并用except捕捉,就可以实现异常处理了,比如:x=input("first number:")y=input("second number:")try: print x/

2014-02-22 22:40:38 1930

原创 使用twisted编写服务器

twisted使用异步的方式处理数据,网络中有事件到达时,协议作出对事件的响应,并调用协议里面的方法,比如loseConnection()用于断开连接,abortConection()用于强制终止连接,connectionMade()用于建立连接。使用twisted编写网络编程程序,需要进行一下步骤:(1)定义协议类,它继承自protocol,(2)定义factory类,它用于实例化协议类的对象,

2014-02-22 22:39:59 1578

原创 C语言条件编译

C语言中的预编译包含三种:1.宏定义2.文件包含3.条件编译,条件编译指的是满足一定条件下才进行编译,它有几种形式:(1)     #ifdef 标识符     //程序#else      //程序#endif  它的意义为如果定义了标识符,则执行程序段1,否则执行程序段2或者用以下的形式# ifdef 标识符//程序       #endif

2014-02-20 13:02:06 888

原创 python实现DNS查询

1.DNS查询过程:以查询 www.baidu.com为例(1) 电脑向本地域名服务器发送解析www.baidu.com的请求(2) 本地域名服务器收到请求后,先查询本地的缓存,如果找到直接返回查询结果,如果没有该记录,本地域名服务器把www.baidu.com的请求发送给根域名服务器(3) 根域名服务器收到请求后,把.com域的服务器IP地址返...

2014-02-16 15:16:23 10786 1

原创 树的递归创建和递归遍历

# include # include struct treenode{ char ch; treenode *left,*right; /*左指针和右指针*/};typedef treenode *treelink;int main(){ treelink createtree(treelink); void preorder(treelink

2014-02-15 21:36:47 1889

原创 网络字节顺序(python)

不同的CPU采用的字节顺序可能不一样,常见的有little-endian和big-endian,little-endian是指将低位字节放在前面,高位字节放在后面,big-endian刚好相反。比如存储0x 00 00 01 02,存储位置为 0010到0013,在little-endian的情况下,存储方式为:0010:02 0011:010012:000013:00在b

2014-02-15 21:34:51 2968

原创 ubuntu安装twisted方法

1.Ubuntu上下载twisted压缩包,Twisted-3.2.0.tar.bz2,cd 到下载目录,用tar –jvxf  Twisted-13.2.0.tar.bz2解压缩,解压完成后进入目录Twisted 13.2.0,然后用 python setup.py install命令安装完成后在shell中输入python,即可显示python版本信息,再输入import tw

2014-02-15 17:45:22 3683

原创 双向链表的建立

双向链表的建立插入删除的方式与单链表类似,要注意的是双向链表的头部和尾部各有一个NULL指针,指示链表的结束。每个链表节点有两个指针分别是前驱指针和后继指针,指向前后两个节点。下面是双向链表的代码:# include # include struct list{int num;list *next,*prior;};typedef list *link;int ma

2014-02-09 19:32:56 1111

原创 ubuntu连接adsl方法

1.       可以桌面右上角点击网络图标,选择编辑,然后弹出对话框: 点击添加,弹出对话框:填入用户名和密码,就可以使用adsl了。2.也可以使用终端输入命令的方式:打开终端,键入命令  sudo pppoeconf ,在接下来的菜单中输入用户名和密码,选择yes,即可建立adsl连接这样adsl连接就可以使用了。如果要打开或者关闭adsl连接,可以分别

2014-02-09 14:46:19 1245

原创 队列的数组和链表实现

1.队列是先入先出额数据结构,它的实现可以用数组,也可以用链表。用数组实现链表时,需要预先分配数组的大小,用front和rear下标分别表示队头元素下标和队尾元素下标,插入一个元素时,使队尾的下标rear加1,删除一个元素时,front下标加1,判断是否为空的队列只要判断front和rear是否相等。队列的插入操作可表示为# include # include # define M

2014-02-09 10:58:46 3501

原创 栈的实现及应用

1.栈是先入后出的数据结构,它的实现可以用数组或者栈顶指针表示,用数组时,可以为栈预分配一定的大小,栈为空时,下标值为top为-1,每增加一个元素,下标值加1,出栈时,弹出一个元素,下标值减1,判断栈是否为空可以用下标值top是否为-1。# include # include int stack[100]={};int top=-1;int size=100;int mai

2014-02-08 22:03:18 1129

原创 字符串匹配算法

1.普通的字符串匹配算法可以从开始处逐个匹配字符,遇到不相等的情况,可以回溯,从上次的下一个位置开始,继续逐个匹配,下面是程序:# include using namespace std;# include int main(){ int find(string,string ); string s1("hello world "); string s2(" wo

2014-02-08 17:31:28 964

原创 ubuntu编译汇编程序

1.       在ubuntu上编译汇编语言的步骤是先下载nasm安装包,用tar、make等命令安装,然后在vi中建立hello.asm文件,文件内容如下: section .textglobal mainmain:mov eax,4 ;   4号调用mov ebx,1 ;   表示输出mov ecx,msg;  字符串的首地址送入ecx寄

2014-02-08 10:23:00 10194

原创 python中的yield

Python有yield表达式,它只能用于定义生成器函数,生成器可以控制函数的执行,函数可以再生成器语句出暂停执行,当前使用的变量,堆栈等都会保留,直到下次使用生成器方法。下面是一个yield的例子:def f(n): a,b=1,1; i=0; while i<n: yield b; a,b=b,a+b; i=i+1;然后产生生成器对象c=f(5

2014-02-08 00:09:55 3068

原创 UDP通信

建立UDP通信,服务器的端的代码如下:#include #include using namespace std;#include #pragma comment(lib,"Ws2_32.lib") void GetIP(void) { char host_name[255]; gethostname(host_name, sizeof(h

2014-02-07 18:59:51 1097

原创 建立TCP通信

TCP,传输控制协议,是一种面向连接可靠的传输层协议,面向连接指的是一次正常的TCP传输需要通过在TCP服务器端和客户端之间建立虚电路,TCP客户端和服务端需要建立连接。Winsock C/S模型中服务器的建立过程是1,初始化WSA 2.建立一个SOCKET 3.绑定SOCKET 4指定监听端口,5接受连接,发送接收数据6断开连接这个过程需要用到的API有:1.      WS

2014-02-07 11:39:44 1518

原创 socket获取本机IP地址方法

获取计算机的名称和IP地址可以通过调用winsock里面的函数完成,下面上是用到的函数:1.WSAStartup(),此函数在应用程序中初始化windows sockets DLL,这个函数调用成功后,才可以调用其他的api函数。2.WSACleanup()函数,应用程序会占用系统资源,这个函数用来解除与socket的绑定,并且释放占用的系统资源。3.gethostname()用于获...

2014-02-07 00:43:33 21814

原创 C++ 多重继承

1.多重继承的概念:一个类有两个或者更多个基类形式为  class  类名>:访问属性> class 类名>,访问属性> class 类名>如 class A:public class B,public class C   上面的定义中,如果B和C都有print函数,这时A类的对象调用print函数,将会发生二义性,这是多重继承存在的缺陷,避免这种二义性,可以用域访问符::,如

2014-02-06 15:18:20 1196

空空如也

空空如也

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

TA关注的人

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