我想修改一個通過使用指針作爲參數傳遞的結構,我無法讓它工作。我不能只返回結構,因爲函數必須返回一個整數。我如何修改函數中的結構?這是我迄今所做的:在我試圖修改的所有行修改作爲指針傳遞的結構 - C
typedef enum {TYPE1, TYPE2, TYPE3} types;
typedef struct {
types type;
int act_quantity;
int reorder_threshold;
char note[100];
}elem;
int update_article(elem *article, int sold)
{
if(*article.act_quantity >= sold)
{
article.act_quantity = article.act_quantity - sold;
if(article.act_quantity < article.act_quantity)
{
strcpy(article.note, "to reorder");
return -1;
}
else
return 0;
}
else if(article.act_quantity < venduto)
{
strcpy(*article.note, "act_quantity insufficient");
return -2;
}
}
我得到這個錯誤:「‘act_quantity’的東西不是一個結構或聯合」錯誤:請求成員」結構。
編輯:我曾使用「。」而不是「 - >」。我現在修好了。它仍然給我一個錯誤:「一元無效類型參數'*'(有'int')」
閱讀有關' - >'運營商。 – Jack
嘿你有沒有理清你的無效類型參數錯誤?請檢查[this](http://stackoverflow.com/questions/5455866/error-invalid-type-argument-of-unary-have-int)是否有類似的錯誤。把它仍然沒有整理出來指出的路線。也許我可以幫忙。我假設你的問題中的代碼是舊的。 –