#include <stdio.h>

int main(void)
{
int i;
int* p;

p = &i;
free(p);
return 0;
}

用済みになった変数はfreeで返すべき、というのが私の見解です。