我有一个main.c调用了downsample中定义的函数downMain.c

downsample的原型是

short int downsample(short int input);


downMain.h中,我具有此函数原型,并且downMain.c包含函数的定义。

编译时出现以下错误

E:\demo\main.c(9) : error C2371: 'downsample' : redefinition; different basic types


返回short int是否可行?为什么我会收到此错误,请解决?

编辑:



我在main.c中包含downMain.h

downMain.c的内容

int call_downsample(int key) {
  if(key == 1)
    downsample(data);
  return 0;
}


downsample函数包含简单的循环跳过副本

downMain.h的内容

int call_downsample(int key);
short int downsample(short int data);

最佳答案

函数downsample(data)是在函数call_downsample(int键)中调用的,因此要做的一件事是必须在调用函数downsample(data)之前定义它,即;在函数call_downsample(int键)上方。

参考此链接,它描述了相同的问题Error C2371: redefinition; different basic types - why?

10-07 18:28