是这样的,如果不释放,下次这段动态内存空间就无法再使用了,久而久之,容易造成内存泄露这样的问题
#include
#include
int main()
{
int *p=NULL;
int years=1994;
int days=365;
int flag=0;
int i=0;
int j=0;
if((0==years%400)||((0==years%4)&&(0!=years%100)))
{
p=(int*)malloc(366);
flag=1;
}
else
{
flag=0;
p=(int*)malloc(365);
}
p=p+31;
for(j=1;j<=29;j++)
{
*p=j;
printf("%-4d",*p);
p++;
if(0==j%4)
{
printf("\n");
}
}
free(p);
return 0;
}
希望能够帮助到你,望采纳!