mem.c

来自「一套接口」· C语言 代码 · 共 54 行

C
54
字号
static char rcsid[] = "$Id: mem.c 6 2007-01-22 00:45:22Z drhanson $";#include <stdlib.h>#include <stddef.h>#include "assert.h"#include "except.h"#include "mem.h"const Except_T Mem_Failed = { "Allocation Failed" };void *Mem_alloc(long nbytes, const char *file, int line){	void *ptr;	assert(nbytes > 0);	ptr = malloc(nbytes);	if (ptr == NULL)		{			if (file == NULL)				RAISE(Mem_Failed);			else				Except_raise(&Mem_Failed, file, line);		}	return ptr;}void *Mem_calloc(long count, long nbytes,	const char *file, int line) {	void *ptr;	assert(count > 0);	assert(nbytes > 0);	ptr = calloc(count, nbytes);	if (ptr == NULL)		{			if (file == NULL)				RAISE(Mem_Failed);			else				Except_raise(&Mem_Failed, file, line);		}	return ptr;}void Mem_free(void *ptr, const char *file, int line) {	if (ptr)		free(ptr);}void *Mem_resize(void *ptr, long nbytes,	const char *file, int line) {	assert(ptr);	assert(nbytes > 0);	ptr = realloc(ptr, nbytes);	if (ptr == NULL)		{			if (file == NULL)				RAISE(Mem_Failed);			else				Except_raise(&Mem_Failed, file, line);		}	return ptr;}

⌨️ 快捷键说明

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