编写一函数new,对n个字符开辟连续的存储空间,此函数应返回一个指针(地址),指向字符串的开始的空间。new(n)表示分配n个字节的内存空间。
我们可以定义一个足够大的连续存储空间。然后将每次进行请求的空间容量是否超出了我们预定义的字节的总空间,如果超出则返回NULL。代码如下:
#include <stdio.h> #define NULL 0 #define NEWSIZE 1000 char newbuf[NEWSIZE]; char *newp = newbuf; char * new(int);
int main(int argc,char *argv) { system("pause"); return 0; } char * new(int n) { if (newp + n <= newbuf + NEWSIZE) { newp = newp + n; return newp - n; } else { return NULL; } }
|
阅读(2696) | 评论(0) | 转发(0) |