我宣布了这个功能:
int dice(int roll[8]) {
blah blah
return (score);
在int main中调用它:
newScore = score(roll[8]);
我收到从int到int错误的无效转换。我究竟做错了什么?错误发生在我称之为的行上。
答案 0 :(得分:3)
int dice(int roll[8]);
int roll[8];
int newScore = dice(roll);
这就是数组作为参数“传递”的方式。
dice()接收到一个int *(可能发生在不指向大小为8的数组!),当使用roll作为参数时,它会“衰减”为指针到它的第一个元素。