我不明白我的錯誤信息函數採用長度爲8的數組作爲參數
triangle_test.c: In function ‘defineLines’:
triangle_test.c:89:1: error: argument ‘args’ doesn’t match prototype
triangle_test.c:25:5: error: prototype declaration
我不知道是否我應該通過& TriHolder,8?我之前從未在C中完成過數組,並且需要一點幫助。
int defineLines(float TriHolder[], int args);
int main(int argc, char* argv[])
{
initialize_TriHolder(1,1,2,2,3,3,4,4);
getInputTriVerts();
getInputInteriorPoint();
defineLines(&TriHolder[0],8); //this is the array I want to pass
}
defineLines(args, length)
{
lineAB[0]=TriHolder[0]; //Ax
lineAB[1]=TriHolder[1]; //Ay
lineAB[2]=TriHolder[2]; //Bx
lineAB[3]=TriHolder[3]; //By
slopeAB = (lineAB[3]-lineAB[1])/(lineAB[2]/lineAB[0]);
interceptAB = slopeAB * -lineAB[0] + lineAB[1]; //b: y - y1 = m(x - x1), x = 0
///////////////////////////
lineBC[0]=TriHolder[2];//Bx
lineBC[1]=TriHolder[3];//By
lineBC[2]=TriHolder[4];//Cx
lineBC[3]=TriHolder[5];//Cy
這是無效的C.用完整的原型定義函數,即返回類型和參數類型。 –
'&TriHolder [0]'和'TriHolder'表示完全相同類型的完全相同的值。確保'TriHolder'的類型是'float'的數組。 – pmg
你的變量名有點混亂'defineLines(float TriHolder [],int args);'''defineLines(args,length)'。第二種情況下的參數是什麼? – andre