我试图通过在我的头文件中创建原型函数来修复我最后一个函数的隐式声明。实验室是编写结构体,目前我有我的 Main.c、RandomNums.h 和 RandomNums.c。我在 RandomNums.c 中的功能已完成,但我不确定我应该如何在 RandomNums.h 中编写它
下面是我的 RandomNums.c 文件,问题是 SetRandomVals 是 Main.c 中的隐式声明
struct RandomNums SetRandomVals(int low,int high) {
struct RandomNums r;
r.var1= (rand() % (high -low + 1)) + low;
r.var2= (rand() % (high -low + 1)) + low;
r.var3= (rand() % (high -low + 1)) + low;
return r;
}
下面是我如何调用 SetRandomVals
RandomNums r = SetRandomVals(low, high);
我试过的原型是
SetRandomVals(int low,int high);
至于我的教授,我可能不会编辑 Main.c 文件。
编辑:添加函数原型后,我的新错误是在它已经声明我有一个隐式声明之后我有一个未定义的引用。
/tmp/ccOhjlhD.o: In function `main':
main.c:(.text+0x63): undefined reference to `SetRandomVals'
collect2: error: ld returned 1 exit status