Attualmente sto cercando di ottenere la lunghezza di un array generato dinamicamente. Si tratta di un array di struct:Come ottenere la lunghezza di una matrice di strutture creata in modo dinamico in C?
typedef struct _my_data_
{
unsigned int id;
double latitude;
double longitude;
unsigned int content_len;
char* name_dyn;
char* descr_dyn;
} mydata;
ho inizializzare il mio allineamento del genere:
mydata* arr = (mydata*) malloc(sizeof(mydata));
E poi ridimensionato utilizzando realloc e ha cominciato a riempirlo con i dati.
Ho quindi tentato di ottenere le sue dimensioni utilizzando il codice descritto here.
sizeof(arr)/sizeof(arr[0])
Questa operazione restituisce anche se la mia matrice contiene due elementi.
Qualcuno potrebbe dirmi per favore cosa sto facendo male?
Non è possibile ottenere a livello di codice la dimensione di un array allocato dinamicamente diverso salvando manualmente il dimensione in una variabile, usando un valore sentinella, ecc. –