void give_weapon(int adr, int type, int material, int item, int condition)
{
player_inventory.weapon[adr].type = type;
player_inventory.weapon[adr].material = material;
player_inventory.weapon[adr].item = item;
player_inventory.weapon[adr].condition = condition;
define_weapon_name(adr);
player_inventory.weapon[adr].gold_val = define_weapon_gold_value(adr);
player_inventory.weapon[adr].weight = define_weapon_weight(adr);
}
功能简单。将您想要提供给玩家的武器信息作为函数参数和您希望武器存储在何处的地址(数组索引)发送。 当我在源文件中执行此代码时,它工作正常,但因为这是我链接的另一个c源文件,所以事情在某种程度上是不同的。
最后一行player_inventory.weapon[adr].weight = define_weapon_weight(adr);
给出了一个错误expected identifier before '=' token
。我检查了拼写,我正在调用的函数的返回类型以及我调用的结构本身 - 一切都很好。
可能导致此问题的原因是什么?