-4
我的問題在這裏似乎總是關於使用函數。它仍然讓我困惑!在這本教科書練習中,我被要求按價值傳遞一個結構,然後調整它並通過引用傳遞。最初,我設計了一些代碼,讓所有工作都以主要方式完成。現在,我正在傳遞價值。所以我添加了新函數,並且我想我正確地傳遞了結構,但是我在 void function1(struct Inventory inv){告訴我參數1(inv)具有不完整類型時出錯。請幫忙!C - 傳遞結構+值的成員
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
void function1(struct Inventory inv);
struct Inventory{
char name[20];
int number;
float price;
float total;
}
void main(){
items;
void function1(items);
float total = items.number*items.price;
printf("Item\tNumber\tPrice\tTotal\tAddress of number\n");
printf("%s\t%d\t%.2f\t%.2f\t%X\n\n",items.name,items.number,items.price,total,&items.number);
getch();
}
void function1(struct Inventory inv) {
printf("Enter the name of the item: ");
scanf("%s", inv.name);
printf("Enter the number of items: ");
scanf("%d", &inv.number);
printf("Enter the price of each item: ");
scanf("%f", &inv.price);
}
這是你在這個網站已經第三個問題。在發佈任何內容之前,請*學習縮進您的代碼。 – 2014-11-23 22:43:20
按值傳遞任何非基元類型是低效和毫無意義的。學習使用指針。 – Havenard 2014-11-23 22:59:04
我的猜測是,它教會了我通過價值傳遞和參照傳遞之間的差異。儘管指針是最好的選擇。 – steeele 2014-11-23 23:31:42