.函数内部中生存期小于函数生存期的变量不要使用malloc动态分配的变量内存,而应该使用局部变量,因为如果函数被调用很多次,会造成大量的内存碎片而导致内存浪费。
例如:函数
void tmp()
{
struct cookie* p = (struct cookie *)calloc(1,sizeof(structcookie));
……
free(p);
return;
}
此处应写成:
void tmp ()
{
struct cookie p;
memset(&p,0,sizeof(struct cookie));
……
return;
}