C语言
文章平均质量分 68
GouplovXim1314
这个作者很懒,什么都没留下…
展开
-
container_of与offsetof详解
Linxu内核中宏container_of的作用是根据结构体成员的一个指针地址来获取整个结构体的地址,要想理解container_of,我们先来看看宏offsetof我们先来看看宏offsetof在Linux内核中是这样定义的:#ifndef _LINUX_STDDEF_H#define _LINUX_STDDEF_H#define offsetof(TYPE, MEMBER) ((size_t)...原创 2018-05-24 23:04:48 · 270 阅读 · 0 评论 -
指针复杂类型
原则:从变量名起,根据运算符优先级结合,一步一步分析(1)int p; //这是一个普通的整型变量(2)int *p; //首先从p处开始,先与*结合,所以说明p是一个指针,然后再与int 结合,说明 指针所指向的内容的类型为Int型//所以p是一个返回整型数据的指针(3)int p[3]; //首先从p处开始,先与[ ]结合,说明p是一个数组,然后再与int 结合,说明数组里的元素是整型的//所...原创 2018-05-24 23:06:06 · 145 阅读 · 0 评论 -
Linux内核数据结构之链表list.h
#ifndef _LINUX_LIST_H#define _LINUX_LIST_H#include <linux/types.h>#include <linux/stddef.h>#include <linux/poison.h>#include <linux/const.h>/* * Simple doubly linked list imple...原创 2018-05-24 23:10:49 · 263 阅读 · 0 评论 -
Linux内核数据结构之链表hlist.h
/* * <Filename : hlist.h> * Date : 2017年6月4日 * Weather : cloudy day * Author : goup */ Linux内核数据结构之哈希链表/* * 1.因为哈希链表并不需要双向循环的技能,它一般适用于单向散列的场景。 * 所以,为了减少开销,并没有用struct hlist_node{}来代表哈希表头, * ...原创 2018-05-24 23:13:09 · 753 阅读 · 0 评论 -
Makefile模板
CFLAGS = -g -Wall INCLUDE = -I/home/CStudy/DateStru/include IDLIBS = -lpthread CC = gcc TARGET = program SOURCE = $(wildcard *.c /home/CStudy/DateStru/src/pub/*.c) #DIR = $(notdir $SOURCE) ...原创 2019-01-16 20:01:51 · 449 阅读 · 0 评论