.
InventoryItemType *inventoryItems[MAX_INVENTORY_SIZE] ;
MAX_INVENTORY_SIZE InventoryItemType
. ,
. :
inventoryItems[count]= (InventoryItemType*)malloc(sizeof(InventoryItemType));
, :
for(i=0; i<MAX_INVENTORY_SIZE; i++)
{
printf("Name:%s\n", display[i].item_Name);
...
inventoryItems[i] i != 1 , undefined
.
InventoryItemType,
next . ,
, .
.
void addItem(InventoryItemType display);
addItem ? display ,
display display, .
,
addItem(*inventoryItems[count], count);
addItem, ,
inventoryItems[count] .
, .
addItem ,
. :
int addItem(InventoryItemType *display);
{
if(display == NULL)
return 0;
printf("\nEnter details of item \n\n");
printf("Enter Item Name: \n");
if(scanf("%19s", display->item_Name) != 1)
return 0;
clear_stdin();
printf("\nEnter Item no: \n");
if(scanf("%2s", display->item_Number) != 1)
return 0;
clear_stdin();
printf("\nEnter Stock: \n");
if(scanf("%d", &display->stock) != 1)
return 0;
printf("\nPurchase Price: \n");
if(scanf("%f", &display->latest_Price) != 1)
return 0;
return 1;
}
1 , 0 . addItem
, addItem .
void, , .
clear_stdin :
void clear_stdin(void)
{
int c;
while((c = getchar()) != '\n' && c != EOF);
}
, ,
.
. addItem
addItem,
addItem . addItem ,
inventoryItems[item_count]=(InventoryItemType*)malloc(sizeof(InventoryItemType));
, addItem .
addItem, :
InventoryItemType *addItem(void)
{
InventoryItemType *current = calloc(1, sizeof *current);
if(current == NULL)
return NULL;
printf("\nEnter details of item \n\n");
printf("Enter Item no: \n");
scanf("%2s", current->item_Number);
clear_stdin();
printf("Enter Item Name: \n");
scanf("%20s", current->item_Name);
clear_stdin();
printf("Enter Stock: \n");
scanf("%d", ¤t->stock);
printf("Enter Purchase Price: \n");
scanf("%f", ¤t->latest_Price);
current->selling_Price=(current->latest_Price)*1.5;
current->total_Sold=0;
system("cls");
return current;
}
addItem ,
( ), .
main :
case 'C':
if(item_count == MAX_INVENTORY_SIZE - 1)
{
fprintf(stderr, "Array is full\n");
break;
}
inventoryItems[item_count] = addItem();
if(inventoryItems[item_count] == NULL)
{
fprintf(stderr, "Not enough memory\n");
break;
}
item_count++;
continue;
case 'D':
...