Jak mogę uzyskać rozmiar bloku pamięci przydzielonego przy użyciu malloc ()? [duplikować]

Możliwe duplikaty:
Jak mogę uzyskać rozmiar tablicy ze wskaźnika w C?
Czy istnieje programowy sposób określenia rozmiaru tablicy C ++? A jeśli nie, to dlaczego?

Dostaję wskaźnik do fragmentu przydzielonej pamięci z funkcji w stylu C. Dla celów debugowania byłoby naprawdę interesujące wiedzieć, jak duży jest przydzielony blok pamięci, który wskazuje ten wskaźnik.

Czy jest coś bardziej eleganckiego niż prowokowanie wyjątku przez ślepe bieganie po jego granicach?

Z góry dziękuję, Andreas

EDYTOWAĆ:

Używam VC ++ 2005 w systemie Windows i GCC 4.3 w systemie Linux

EDIT2:

mam_msize w VC ++ 2005 Niestety powoduje to wyjątek w trybie debugowania ....

EDIT3:

Dobrze. Wypróbowałem sposób opisany powyżej z wyjątkiem i działa. Przynajmniej podczas debugowania i upewniania się, że zaraz po zakończeniu wywołania biblioteki kończę granice bufora. Działa jak marzenie.

Po prostu nie jest elegancki i nie nadaje się do użycia w kodzie produkcyjnym.