Для домашнего задания мы работаем над анализатором CSV.Я пытаюсь заставить вещи работать, но я столкнулся с проблемой.Кажется, я не могу присвоить значение значению «field» в структуре.В предоставленном ими коде они имеют:
typedef char f_string[MAX_CHARS+1] ; /* string for each field */
typedef struct {
int nfields; /* 0 => end of file */
f_string field[MAX_FIELDS]; /* array of strings for fields */
} csv_line ;
С указанными выше константами, определенными в 20 и 15. Если посмотреть на то, что у них есть, структура содержит и int, и она содержит массив, который должен быть заполненf_string typedef, который они определили ранее.Хорошо крутоЯ попытался сделать это следующим образом:
f_string test = "Hello, Bob";
f_string testAgain = "this is dumb, k?";
f_string anArray[MAX_FIELDS] = {*test, *testAgain};
csv_line aLine;
aLine.nfields = 3;
aLine.field = *anArray;
Когда я делаю "anArray", если у меня нет разыменований для test и testAgain, я получаю предупреждения о создании целых для указателей без приведения.Поэтому я оставляю их внутри. Но строка:
aLine.field = *anArray;
Возвращает ошибку: «csv.c: 87: ошибка: несовместимые типы в присваивании» с указателем или без него ... так что яне уверен, как я должен назначить эту переменную?Помощь будет оценена!