У меня возникли проблемы с компиляцией моего кода. Каждый раз, когда я скомпилировать его я получаю:ошибка неполный элемент тип struct
rec5.c: In function âmainâ:
rec5.c:7:17: error: array type has incomplete element type
struct Item cart[3];
^
rec5.c:8:16: error: array type has incomplete element type
struct Item book[4];
^
rec5.c:9:16: error: array type has incomplete element type
struct Item clothing[5];
^
rec5.c:10:16: error: array type has incomplete element type
struct Item sports[6];
^
rec5.c:20:5: error: expected â;â before âprintfâ
printf("%s %d %d", book.name, book.price, book.quantity);
^
rec5.c:24:6: error: expected â;â before âprintfâ
printf("%s %d %d", clothing.name, clothing.price, clothing.quantity);
^
rec5.c:28:6: error: expected â;â before âprintfâ
printf("%s %d %d", sports.name, sports.price, sports.quantity);
Я попытался с помощью ЬурейеГо, прежде чем структура, но я получил «размер массива не объявлен». Я не могу сказать, почему Item не объявляется должным образом. Функция должна спросить у клиента, какой элемент они хотят, а затем отобразить правильные данные.
#include <stdio.h>
int main(){
struct Item cart[3];
struct Item book[4];
struct Item clothing[5];
struct Item sports[6];
book.name = "harry potter";
book.price == "$100";
clothing.name = "shirt";
clothing.price == "$15";
sports.name = "football";
sports.price = "20";
scanf("enter Item %c", cart.type);
if (cart.type == "book"){
scanf("please enter quantity %d", book.quantity)
printf("%s %d %d", book.name, book.price, book.quantity);
}
if (cart.type == "clothing"){
scanf("please enter quantity %d", clothing.quantity)
printf("%s %d %d", clothing.name, clothing.price, clothing.quantity);
}
if (cart.type == "sports"){
scanf("please enter quantity %d",sports.quantity)
printf("%s %d %d", sports.name, sports.price, sports.quantity);
}
}
struct Item
{
char *type;
char *name;
double price;
double quantity;
};
совет: вы можете использовать бесплатные инструменты, такие как AStyle, для исправления форматирования кода перед публикацией –