alloc.h//接口 #include<stdlib.h> #define malloc #define MALLOC(num,type) (type *)alloc((num)*sizeof(type)) extern void *alloc(size_t size); alloc.c//实现 #include <stdio.h> #include "alloc.h" #undef malloc void * alloc(size_t size) { void *new_mem; new_mem=malloc(size); if(new_mem==NULL){ printf("out of memory\n"); exit(1); } return new_mem; } a_client.c//使用 #include "alloc.h" void function(){ int *new_memory; new_memory=MALLOC(25,int); } |