c - 函数以长度为 8 的数组作为参数

标签 c arrays function args

我不明白我的错误信息

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

最佳答案

不要对函数参数使用 pre-ANSI 形式。应编译以下内容:

int defineLines(float TriHolder[], int args);

int main(void)
{
  /* ... */
}

int defineLines(float triHolder[], int args)
{
  /* .. */
}

关于c - 函数以长度为 8 的数组作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14123717/

相关文章:

c - 我将如何使用递归来生成所有可能性?

用数组调用可变参数函数?

php - 将关联数组的数组减少为关联数组

r - 数据集中的变量可以用作函数中的参数吗?

php - jQuery PHP 在函数内传递值与实时点击?

c - 创建标准输入/标准输出的位置

c - 如何找出质数出现了多少次?

c - 如何从函数返回链表?

arrays - 为什么字符串需要初始化一个初始值?

php - register_shutdown_function 覆盖