zyj1214 发表于 2024-5-31 18:49:06

用Visual Studio Code学习编写调用其他文件的函数,报错是怎么回事?

报错
thI49.o:t1.c:(.text+0x69): undefined reference to `hs'
collect2.exe: error: ld returned 1 exit status

是我哪里写的不对,,求指教?还有其他写法和办法吗?

FishC 发表于 2024-5-31 18:49:23

这个错误通常是因为编译器找不到所调用的函数的定义。可能有以下几个原因导致这个问题:

1. 函数未被正确声明或定义:请确保你在调用函数之前已经正确地声明和定义了该函数。如果你在不同的文件中编写函数的声明和定义,需要使用头文件来实现函数的声明。例如,你可以将函数的声明放在头文件中(以.h为扩展名),然后在调用函数的文件中引用该头文件。

2. 文件没有正确链接:如果你的代码涉及多个源文件,你需要在编译时将它们链接在一起。如果你使用的是gcc编译器,可以使用以下命令进行链接:
   gcc file1.c file2.c -o output

3. 函数名拼写错误或参数不匹配:请仔细检查你调用函数的地方,确保函数名的拼写正确,并且传递给函数的参数与函数的声明或定义相匹配。

如果你能提供更多的代码,包括涉及的文件和函数的定义,我们可以更具体地帮助你解决问题。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 用Visual Studio Code学习编写调用其他文件的函数,报错是怎么回事?