编程基础
文章平均质量分 76
zhang-guojun
这个作者很懒,什么都没留下…
展开
-
常用控制字符ASCII码
ctrl+字母的ASCII码=字母的ASCII码&0x1f 0(00) NULL 8(08) ^H 16(10) ^P 24(18) ^X 1(01) ^A 9(09) ^I 17(11) ^Q 25(19) ^Y 2(02) ^B 10(0A) ^J原创 2013-09-23 11:07:31 · 1936 阅读 · 1 评论 -
堆栈溢出从入门到提高
转自:http://www.jiaonan.net/html/2007/06/20070624034620915.htm 入门篇 2007-6-24 15:46:20 本讲的预备知识: 首先你应该了解intel汇编语言,熟悉寄存器的组成和功能。你必须有堆栈和存储分配方面 的基础知识,有关这方面的计算机书籍很多,我将只是简单阐述原理,着重在应用。其次, 你应转载 2013-10-11 00:52:31 · 3896 阅读 · 0 评论 -
深入理解TAILQ队列
工作的主要内容是tcp/ip,平台是FreeBSD,而且在内核态开发,所以很多情况下会涉及内核的一些数据结构和宏,比如说mbuf和TAILQ等。 TAILQ是FreeBSD/linux内核对双向队列操作的一种抽象,抽象程度不亚于C++,能实现操作队列需要的各种操作:插入元素,删除元素,遍历队列等。这个队列的优点是插入元素很快。 这里先回顾一下队列的特点(来自维基百科 http://zh.wik转载 2014-01-22 14:05:41 · 2540 阅读 · 2 评论 -
C语言之尾队列tailq
queue和list的结构定义和操作都在'sys/queue.h'中完成, 主要定义了下面四种数据结构: 单向列表(single-linked lists)单向尾队列(single-linked tail queue)列表(lists)尾队列(tail queues) 尾队列图示 尾队列常用宏 宏名称 操作转载 2014-01-22 17:29:58 · 6224 阅读 · 1 评论 -
select,poll,epoll简介
select,poll,epoll简介 select select本质上是通过设置或者检查存放fd标志位的数据结构来进行下一步处理。这样所带来的缺点是: 1 单个进程可监视的fd数量被限制 2 需要维护一个用来存放大量fd的数据结构,这样会使得用户空间和内核空间在传递该结构时复制开销大 3 对socket进行扫描时是线性扫描转载 2014-01-20 16:18:19 · 742 阅读 · 0 评论 -
How to use list from sys/queue.h?
LIST_ENTRY creates fields to put into your structure that are suitable for linking the elements, so you do not have to concern yourself with the specifics of those pointers. struct foo { int a, b转载 2014-02-06 19:14:30 · 1273 阅读 · 0 评论