错误:函数的冲突类型(C)

时间:2015-10-06 22:04:14

标签: c function types floating-point

所以我正在制作一个制作表的函数,它将x和y值放在一个等式中。这是我到目前为止所做的。

flip f y

它告诉我"错误:' theMath'"的冲突类型,我无法弄清楚原因。用gcc编译。

2 个答案:

答案 0 :(得分:0)

您的函数 theMath 在定义之前使用,并且在使用之前未声明。您只需要在C文件的开头声明该函数:

   float theMath(int x, int y);  

答案 1 :(得分:-1)

在函数调用之前添加theMath的原型定义(函数声明)。这应该是错误的原因。

#include <stdio.h>
#include <math.h>

//add declaration of the function here
float theMath(int x, int y);
int main(){
  int x, y;
  float num;

  printf("%3c", '+');
  for (x=5; x <= 100;x=x+5){
    printf("%8i",x);
  }
  printf("\n");
  for (y = 5; y<= 100;y=y+5){
    printf("%3d ",y);
    for (x=5;x<=100;x=x+5){
      num = theMath(x, y);  
      printf("%7f", num);
      printf(" ");  
    }
    printf("\n");

  }
  return 0;
}

float theMath(int x, int y){
  float sum;
  sum = ((x*x*x*x)/(y*y)) + sqrt(y);
  return sum;
}