生存期小於函式生存期的變數不要使用動態記憶體分配
.函式內部中生存期小於函式生存期的變數不要使用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;
}