¿Cómo puedo obtener el tamaño de un bloque de memoria asignado usando malloc ()? [duplicar]

Posibles duplicados:
¿Cómo puedo obtener el tamaño de una matriz desde un puntero en C?
¿Hay alguna manera de determinar el tamaño de una matriz de C ++ mediante programación? Y si no, ¿por qué?

Obtengo un puntero a una parte de la memoria asignada de una función de estilo C. Ahora, para fines de depuración sería realmente interesante saber qué tan grande es el bloque de memoria asignado que señala este puntero.

¿Hay algo más elegante que provocar una excepción al correr a ciegas sobre sus límites?

Gracias de antemano, Andreas

EDITAR:

Utilizo VC ++ 2005 en Windows y GCC 4.3 en Linux

EDIT2:

yo tengo_msize bajo VC ++ 2005 Desafortunadamente, se traduce en una excepción en el modo de depuración ...

EDIT3:

Bien. He intentado de la manera descrita anteriormente con la excepción, y funciona. Al menos mientras estoy depurando y asegurándome de que inmediatamente después de que la llamada a la biblioteca salga, corro los límites del búfer. Funciona de maravilla.

Simplemente no es elegante y de ninguna manera se puede utilizar en el código de producción.

Respuestas a la pregunta(9)

Su respuesta a la pregunta