data
является неполным типом . Это означает, что он не полностью определен, поэтому его размер неизвестен. в этом случае он вообще не определен, просто объявлен.
вам нужно сделать определение доступным для кода, который объявляет переменную этого типа, например, в вашей функции drawData
.
вещи, которые вы можете сделать с неполным типом, включают его использование в качестве основы для указателя или ссылочного типа и использование его в качестве типа аргумента результата или значения в объявлении функции (как вы это сделали). но вы не можете делать ничего, что требует знания размера. объявление переменной требует знания размера.
ура и hth.,