Kann ich statische und automatische Variablen in C freigeben?

Der Code lautet wie folgt:

#include <stdlib.h>

int num = 3;   // Static external variable
int *ptr = &num;

int main(void)
{
 int num2 = 4;  // Automatic variable
 int *ptr2 = &num2;

 free(ptr);  //Free static variable
 free(ptr2); //Free automatic variable

 return 0; 
}

Ich versuche den obigen Code zu kompilieren und es funktioniert, ich bin gespannt macht dasfree() Funktion in der Lage, sowohl die statische Variable als auch die automatische Variable freizugeben? Oder macht es im Grunde nichts?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage