请问这个函数的问题怎么解决?

老师上课举例给出的代码,我复制下来试着在自己的电脑上运行,但是却总是出现错误,请问是哪里出了问题?... 老师上课举例给出的代码,我复制下来试着在自己的电脑上运行,但是却总是出现错误,请问是哪里出了问题? 展开
 我来答
我就是很烦12
2021-03-05 · TA获得超过1.8万个赞
知道小有建树答主
回答量:1050
采纳率:83%
帮助的人:340万
展开全部

有两个问题啊。

第一个是,你的文档里有zylib.h的头文件吗?应该是没有这个文件的。zylib.h这个头文件要跟C源代码文件放一起。就是要这样子。

main函数的文件要和这个头文件放在一起,要不然检测不到。编译器提示没有GetStringFromKeyborad()的原因,因为stdio.h这个头文件,是标准头文件,不存在GetStringFromKeyborad()这个名字的函数,所以肯定是你自己写的,放在了你自己写的zylib.h的头文件里面。

第二,如果头文件是这样放的,它还是提示GetStringFromKeyboard()的错误的话,就要打开你这头文件,看看zylib.h的头文件里有没有这个函数的声明了,如果zylib.h的头文件里有这个声明,就要看看这个函数的源代码是不是写在这头文件里了,如果没有,那么就需要看一下它是不是放在其他地方了,另外写的,需要GetStringFromKeyborad的函数的源代码的,没有源码,只有声明,编译不了。

第二个错误,就是你自己的代码写错了,倒数第二行的printf函数里,那个name变量前面的&要去掉,直接写成printf("hello,%s\n",name);参数是name变量,不是name的地址。

可能你需要看一下zylib.h的源码啊,我记得C语言里没有string这数据类型啊,而且要有,也是小写的啊,STRING全是大写的,而且用的是C语言的格式,STRING应该也是你自己写的吧,需要看一下STRING的定义,因为编译器提示的需要char *字符型指针,需要变量的类型是char *指针,STRING是怎么定义的,也是不明确的。。。。如果STRING的定义是数组,应该直接用数组的名字,否则要取地址符&。。。。。

海狮2D
2021-03-05 · TA获得超过3019个赞
知道大有可为答主
回答量:1904
采纳率:55%
帮助的人:985万
展开全部
错误是项目的属性里缺少需要的库,例如. lib或者. a。
追问
是不是老师发给我们的一个库函数zylib.h里面缺少关于GetStringFromKeyboard()这个函数的定义呀?
如果是的话,该怎么在库函数里面插入一个函数使得可以从键盘输入我要的字符串呢?
追答
不是缺少定义,是缺少实现。. h中一般是声明,. cpp,. c,. a,. lib,. obj等里面才是实现。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式