"undefined reference to" 类型问题出现原因和解决方式

原因一: 链接时缺失了相关目标文件(.o)

比如说在main函数里面调用了test()函数 但是你没有给出test函数的函数体实现
或者你实现了test函数体但是没有把头文件包括进来main文件
导致链接阶段编译器找不到函数体实现


 

以上面的两个文件为例子 main.c test.c
如果直接
gcc -o main main.c
你会发现报错
因为并没有把test.c链接进来

解决:

解决措施如下

方式一:gcc -o main main.o test.o


方式二:gcc -o main main.c test.c

原因二:

解决:

原因三:

解决:

发布了61 篇原创文章 · 获赞 17 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/vjhghjghj/article/details/102580308