Nginx源码分析 - 基础数据结构篇 - 字符串结构 ngx_string.c
2016-02-17 18:50
543 查看
Nginx的ngx_str_t字符串结构非常简单和好用。
nxg_string.c文件中包含了很多常用的字符串操作方法,具体我们就不讲解了,主要简单来看下Nginx的字符串数据结构
![](http://img.blog.csdn.net/20160217185635792?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
nxg_string.c文件中包含了很多常用的字符串操作方法,具体我们就不讲解了,主要简单来看下Nginx的字符串数据结构
数据结构定义
ngx_str_t 字符串结构
/** * 字符串结构 */ typedef struct { size_t len; //字符串长度 u_char *data; //具体的指针地址 } ngx_str_t;
ngx_keyval_t 字符串K V结构
/** * 字符串的K V结构 */ typedef struct { ngx_str_t key; ngx_str_t value; } ngx_keyval_t;
数据结构图
具体函数实现
初始化一个字符串 ngx_string
//初始化一个字符串 #define ngx_string(str) { sizeof(str) - 1, (u_char *) str }
设置字符串
//将一个字符串设置为NULL #define ngx_null_string { 0, NULL } //设置一个字符串 #define ngx_str_set(str, text) \ (str)->len = sizeof(text) - 1; (str)->data = (u_char *) text #define ngx_str_null(str) (str)->len = 0; (str)->data = NULL
相关文章推荐
- 舞蹈链--求精密覆盖(数据结构)
- Dex文件结构及对应的数据结构
- 数据结构图文解析之:二分查找及与其相关的几个问题解析
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构
- 通过一个实例学会时间复杂度的计算
- 数据结构:JavaScript实现各种排序
- ArrayList的一些方法
- 开放定址散列算法
- 数据结构图文解析之:直接插入排序及其优化(二分插入排序)解析及C++实现
- MySQL索引背后的数据结构及算法原理
- redis原理-数据结构
- java实现的Trie树数据结构
- 数据结构算法
- 加速R运行的简易方法-数据结构和*pply簇
- 使用JavaScript的数组实现数据结构中的队列与堆栈
- 数据结构(陈越) 作业题 第三周
- 数据结构(陈越) 作业题 第二周
- 数据结构(陈越) 作业题 第一周
- 常用的数据结构