编程基础
文章平均质量分 76
zhang-guojun
这个作者很懒,什么都没留下…
展开
-
常用控制字符ASCII码
ctrl+字母的ASCII码=字母的ASCII码&0x1f0(00) NULL 8(08) ^H 16(10) ^P 24(18) ^X1(01) ^A 9(09) ^I 17(11) ^Q 25(19) ^Y2(02) ^B 10(0A) ^J原创 2013-09-23 11:07:31 · 1937 阅读 · 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 · 2542 阅读 · 2 评论 -
C语言之尾队列tailq
queue和list的结构定义和操作都在'sys/queue.h'中完成, 主要定义了下面四种数据结构:单向列表(single-linked lists)单向尾队列(single-linked tail queue)列表(lists)尾队列(tail queues)尾队列图示 尾队列常用宏宏名称操作转载 2014-01-22 17:29:58 · 6227 阅读 · 1 评论 -
select,poll,epoll简介
select,poll,epoll简介selectselect本质上是通过设置或者检查存放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 评论