convm2d.c

来自「著名操作系统Plan 9的第三版的部分核心源代码。现在很难找到了。Plan 9是」· C语言 代码 · 共 35 行

C
35
字号
#include	<u.h>#include	<libc.h>#include	<auth.h>#include	<fcall.h>#define	CHAR(x)		f->x = *p++#define	SHORT(x)	f->x = (p[0] | (p[1]<<8)); p += 2#define	LONG(x)		f->x = (p[0] | (p[1]<<8) |\				(p[2]<<16) | (p[3]<<24)); p += 4#define	VLONG(x)	f->x = (vlong)(p[0] | (p[1]<<8) |\					(p[2]<<16) | (p[3]<<24)) |\				((vlong)(p[4] | (p[5]<<8) |\					(p[6]<<16) | (p[7]<<24)) << 32); p += 8#define	STRING(x,n)	memmove(f->x, p, n); p += nintconvM2D(char *ap, Dir *f){	uchar *p;	p = (uchar*)ap;	STRING(name, sizeof(f->name));	STRING(uid, sizeof(f->uid));	STRING(gid, sizeof(f->gid));	LONG(qid.path);	LONG(qid.vers);	LONG(mode);	LONG(atime);	LONG(mtime);	VLONG(length);	SHORT(type);	SHORT(dev);	return p - (uchar*)ap;}

⌨️ 快捷键说明

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