网站首页 > 文章中心 > 其它

c语言函数名未定义

作者:小编 更新时间:2023-09-05 10:31:37 浏览量:418人看过

Linux下编写c语言头文件,编译时出现"函数未定义"

出现该错误的原因为编译时只变编译了源文件的一部分,故在链接时无法从编译好的目标代码中找到print函数,所以出错.

根据你的源文件结构,个人推荐先单独编译源文件为多个object文件,再统一链接.

方法如下

gcc?-c?main.c?#?-c参数的作用是让gcc只编译,不链接

gcc?-c?test.c

gcc?-o?main?main.o?test.o?#?将编译好的目标代码链接

当然,好了,全部的在gcc为编译器的前提下执行,如使用clang等其他编译器,方法类似(clang的调用方法与gcc高度兼容)

C语言 函数已经声明 为什么提示未定义

声明和定义不是一回事!声明只是签名,定义才为函数提供真正的代码.

C语言提示某个函数未定义求帮忙

C语言没有bool类型,需要自己来定义,同时IsPrime函数的变量i重复定义了修改如下.

#?include?stdio.h???//这是代码

typedef?enum?//定义bool类型

{

true?=?0,

false?=?1,

}bool;

bool?IsPrime(int?m)??//第三行

{?

int?i;

if(m%i?==?0)

break;

}

if(i?==?m)

return?true;

else

return?false;

C语言关于函数声明的问题,为什么声明后还是报错说函数未定义

你把大括号的位置放错了,sushu函数被定义在了main函数里面,但是按照C语言的规定,函数不允许嵌套定义,所以你的sushu相当于没有定义(不知为何你的编译器没有报错说不允许在函数内定义函数).解决方法是把你最后面多出来的大括号移到main函数最后面.

以上就是土嘎嘎小编大虾米为大家整理的相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章