unaligned.h

来自「linux 内核源代码」· C头文件 代码 · 共 30 行

H
30
字号
/* * This file is subject to the terms and conditions of the GNU General Public * License.  See the file "COPYING" in the main directory of this archive * for more details. * * Copyright (C) 2007 Ralf Baechle (ralf@linux-mips.org) */#ifndef __ASM_GENERIC_UNALIGNED_H#define __ASM_GENERIC_UNALIGNED_H#include <linux/compiler.h>#define get_unaligned(ptr)					\({								\	struct __packed {					\		typeof(*(ptr)) __v;				\	} *__p = (void *) (ptr);				\	__p->__v;						\})#define put_unaligned(val, ptr)					\do {								\	struct __packed {					\		typeof(*(ptr)) __v;				\	} *__p = (void *) (ptr);				\	__p->__v = (val);					\} while(0)#endif /* __ASM_GENERIC_UNALIGNED_H */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?