自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

soul519的专栏

图像处理,计算机视觉,Linux

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

转载 linux socket断开网络连接程序终止

屏蔽信号:signal设置的信号句柄只能起一次作用,信号被捕获一次后,信号句柄就会被还原成默认值了。sigaction设置的信号句柄,可以一直有效,值到你再次改变它的设置。 当服务器close一个连接时,若client端接着发数据。根据TCP协议的规定,会收到一个RST响应,client再往这个服务器发送数据时,系统会发出一个SIGPIPE信号给进程,告诉进程这个连接已经断

2013-10-23 09:49:43 2519

原创 08-1排序 快速排序

# include int FindPos(int * a, int low, int high);void QuickSort(int * a, int low, int high);int main(void){ int a[6] = {-2, 1, 0, -985, 4, -93}; int i; QuickSort(a, 0, 5); //第二个参数表示第一个元素的下标

2013-10-19 15:18:48 590

原创 07-1链式二叉树,前序、中序、后序遍历

# include # include struct BTNode{ char data; struct BTNode * pLchild; //p是指针 L是左 child是孩子 struct BTNode * pRchild;};void PostTraverseBTree(struct BTNode * pT);struct BTNode * CreateBTree(

2013-10-19 15:15:42 588

原创 06递归-汉诺塔

# include void hannuota(int n, char A, char B, char C){/* 如果是1个盘子 直接将A柱子上的盘子从A移到C 否则 先将A柱子上的n-1个盘子借助C移到B 直接将A柱子上的盘子从A移到C 最后将B柱子上的n-1个盘子借助A移到C*/ if (1 == n) { printf("将编号为%d的盘子直接从%c柱

2013-10-19 15:13:02 562

原创 05-2循环队列

# include # include typedef struct Queue{ int * pBase; int front; int rear;}QUEUE; void init(QUEUE *);bool en_queue(QUEUE *, int val); //入队void traverse_queue(QUEUE *);bool full_queue(Q

2013-10-19 15:11:27 635

原创 05 -1队列-链式队列

/* 2008年3月26日16:31:56 链式队列*/# include using namespace std;typedef struct node{ int data; struct node *pNext;}NODE, *PNODE;class Queue{public: Queue() { this->pHead = this->pTail =

2013-10-19 15:03:28 627

原创 01数据结构概述(郝斌数据结构)

数据结构概述(教材选用严蔚敏、吴伟民,该书程序是伪算法具体的程序是高一凡,西电的,大牛,只有程序。还有一本书,台湾的黄国瑜自己写的只有思路,程序是另外一个合作的清华的写的,可惜很多错的。)学完数据结构之后会对面向过程的函数有一个更深的了解       定义       我们如何把现实中大量而复杂的问题以特定的数据类型(单个数据怎样存储?)和特定的存储结构(个体的关系)保存到主存

2013-10-19 15:01:54 1574 1

原创 04栈的压栈、出栈、遍历

# include # include # include typedef struct Node{ int data; struct Node * pNext;}NODE, * PNODE;typedef struct Stack{ PNODE pTop; PNODE pBottom;}STACK, * PSTACK; //PSTACK 等价于 struct STA

2013-10-19 14:40:41 758

原创 03链表的创建、插入、删除、遍历、排序

# include # include # include typedef struct Node{ int data; //数据域 struct Node * pNext; //指针域}NODE, *PNODE; //NODE等价于struct Node PNODE等价于struct Node *//函数声明PNODE create_list(void); //创建

2013-10-19 14:33:08 700

原创 02数组操作

# include # include //包含了malloc函数# include //包含了exit函数//定义了一个数据类型,该数据类型的名字叫做struct Arr, 该数据类型含有三个成员,分别是pBase, len, cntstruct Arr{ int * pBase; //存储的是数组第一个元素的地址 int len; //数组所能容纳的最大元素的个数 i

2013-10-19 14:30:27 614

转载 链表逆序

设链表节点为[cpp] view plaincopyprint?typedef struct tagListNode{     int data;      struct tagListNode* next; }ListNode, *List;  typedef struct tagListNode{ int data; struct

2013-10-19 14:23:53 552

转载 socket阻塞与非阻塞,同步与异步、I/O模型 .

[+]概念理解Linux下的五种IO模型阻塞IO模型非阻塞IO模型IO复用模型信号驱动IO异步IO模型个IO模型的比较selectpollepoll简介socket阻塞与非阻塞,同步与异步作者:huangguisu1. 概念理解     在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(

2013-10-17 22:44:59 590

空空如也

空空如也

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

TA关注的人

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