Kann ich überprüfen, ob ein Zeiger von malloc / calloc / realloc zugewiesen wurde? [Duplikat

Diese Frage hat hier bereits eine Antwort:

Überprüfen Sie, ob ein Zeiger auf den zugewiesenen Speicher auf dem Heap verweist. 10 Antworten Kannst du feststellen, ob ein String in C frei ist? [Duplikat 5 Antworten

Ich habe mich gefragt, ob es möglich ist zu überprüfen, ob ein Zeiger, der an eine Funktion übergeben wurde, von malloc / calloc / realloc zugewiesen wurde.

int main(){
    struct something o;
    struct something *a;
    a = malloc(sizeof(struct something));
    freeSome(&o);/*This would normally throw an (corruption?) error*/
    freeSome(a);/*This is fine*/
}

void freeSome(struct something * t){
    if (/*expression here*/){
        free(t);
    }
}

Ich verstehe, dass Sie in der Regel überprüfen, obt == NULL, aber ich habe mich nur gefragt, ob es möglich ist, festzustellen, ob für den angegebenen Zeiger Speicher zugewiesen wurde.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage