C - Alokacija memorije
Pozdrav svima!
Imam problem sa alokacijom memorije unutar strukture:
typedef struct
{
char *usrname;
int int_usr_id;
} user_data;
...
user_data *user_data_arr;
user_data_arr = (user_data*)malloc(sizeof(user_data) * 10);
...
Uzimamo podatke iz baze, 10 redova
...
user_data_arr[i].usrname = (char *)malloc(sizeof(mysql_row[0]));
if (user_data_arr[i].usrname != NULL)
{
sprintf(user_data_arr[i].usrname,"%s",mysql_row[0]);
}
...
Kada izvrsim ovaj kod dobijem:
*** glibc detected *** malloc(): memory corruption: 0x0806c250 ***
Ako koristim staticki niz, npr. usrname[50] onda sve radi ok.
|