Я не уверен, почему printf
просто замерзнет, но с этим несколько вещей не так.Во-первых, все указатели в вашем массиве DATA*
неинициализированы.Вы, вероятно, намеревались создать массив DATA
вместо массива DATA
указателей:
DATA listOfData[100];
Вы также не заканчивали структуру точкой с запятой, поэтому вряд ли этодаже скомпилируйте:
#define DATA struct data
DATA
{
int id;
char data;
};
Наконец, вы используете printf
довольно небезопасно;первый аргумент должен быть строкой формата, или вы можете получить странное поведение, если в первом аргументе есть %
:
printf("%c\n", listOfData[5].data);