nginx中的链表遍历
#include <ngx_list.h>
void main(){
ngx_list_t* testlist = ngx_list_create(r->pool, 4,sizeof(ngx_str_t));
if (testlist == NULL) {
return NGX_ERROR;
}
ngx_str_t* str = ngx_list_push(testlist);
if (str == NULL) {
return NGX_ERROR;
}
str->len= sizeof("Hello world");
str->data = "Hello world";
ngx_list_part_t* part = &testlist.part;
ngx_str_t* str = part->elts;
for (i = 0; ; i++) {
if (i >= part->nelts) {
if (part->next == NULL) {
break;
}
ngx_list_part_tpart = part->next;
str = part->elts;
i = 0;
}
printf("list element: %*s\n",str[i].len, str[i].data);
}
}