對申請堆空間的函數封裝,靈活的使用到指針。衆所周知,指針是c語言的一大特色。C多用於底層開發,足以看出其指針的靈活性。下面我們將使用兩張種方法,實現對申請堆空間的函數的封裝。
#include<stdio.h>
#define TYPE char
#define SIZE 20
//方法一、
int app_room(TYPE **p,int size)
{
*p=(TYPE *)malloc(size);
strcpy(*p,"hello world");
}
//方法二、
TYPE *app_room_p(int size)
{
TYPE *p;
p=(TYPE *)malloc(size);
strcpy(p,"hello world");
return p;
}
//驗證:
int main()
{
TYPE *p;
// app_room(&p,SIZE);
p=app_room_p(SIZE);
printf("%s\n",p);
return 0;
}
結果: