Это может быть пустым вопросом, но я не могу понять, что я делаю неправильно (я не использовал две структуры друг в друге).
У меня есть две структуры:
struct test
{
struct ddata* difference;
int diff;
};
struct test *MSG;
struct ddata
{
char *filename;
char *size;
};
struct ddata *difference
И я хочу дать им значения таким образом (и моя программа зависает здесь):
MSG->difference = difference;
MSG->diff = diff;
Так что я делаю не так?
Заранее спасибо!
Kampi
EDIT:
Переменная структуры разности создается в одной из моих функций (и там я хочу дать значение моей структуре MSG). Переменная структуры MSG объявлена глобально (я не знаю, уместно ли это). Значение разницы объявляется и заполняется следующим образом:
struct ddata *difference = (struct ddata *) malloc( dif * sizeof *difference );
memset( difference, 0, dif * sizeof *difference );
...
...
...
difference[diff].filename = strdup( primary[i].filename );
difference[diff].size = strdup( primary[i].size );
diff++;
Я надеюсь, что дал вам то, что вам нужно.