我有一個函數接收作爲參數的結構數組的小問題,當試圖訪問數組元素與運算符 - >我不能訪問的結構數組元素 - >
#include <stdio.h>
typedef struct{
int order;
}record;
void entry(record*reg, size_t num_regs);
int main(void){
record reg[10];
entry(reg, sizeof reg/sizeof reg[0]);
return 0;
}
void entry(record*reg, size_t num_regs){
size_t i;
for (i = 0; i < num_regs; i++){
reg[i]->order = i;
printf("\n order = %d", reg[i]->order);
}
}
,如果你試圖編譯
*error #2140: Type error in argument 1 to 'ingreso'; expected 'registro * *' but found 'registro *'.*
,因爲它拋出這個錯誤,以及如何解決它拋出這個錯誤?
問題不在於此代碼中,你如何調用'entry()'? – 2015-02-11 19:05:39
我們需要看到'void entry(...)的調用。)'有任何幫助,但問題駐留在那裏,因爲編譯器抱怨你正在傳遞'registro *'而不是'registro **',可能你有'registers [0]'而不是' &registers [0]'或者你傳遞一個'registro [NUM]'而不是'registro * [NUM]'。 – Jack 2015-02-11 19:06:07
我編輯了添加完整程序的問題 – Kevin 2015-02-11 19:14:04