sbrk.c

来自「这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易」· C语言 代码 · 共 36 行

C
36
字号
#include <u.h>#include <libc.h>extern	char	end[];static	char	*bloc = { end };extern	int	brk_(void*);enum{	Round	= 7};intbrk(void *p){	uintptr bl;	bl = ((uintptr)p + Round) & ~Round;	if(brk_((void*)bl) < 0)		return -1;	bloc = (char*)bl;	return 0;}void*sbrk(ulong n){	uintptr bl;	bl = ((uintptr)bloc + Round) & ~Round;	if(brk_((void*)(bl+n)) < 0)		return (void*)-1;	bloc = (char*)bl + n;	return (void*)bl;}

⌨️ 快捷键说明

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