c - 如何修复“函数的隐式声明”
问题描述
我正在用 C 语言开发一个 GUI 库以供学校工作,但我遇到了头文件问题(我认为)。我在“draw.c”文件中有一个函数“rectangle_coordinates”,带有足够的“draw.h”头文件,在文件“widget_frame.c”中我调用这个函数,包括“draw.h”头文件文件。但我仍然收到警告:
./src/ei_widget_frame.c:40:5: warning: implicit declaration of function 'rectangle_coordinates' [-Wimplicit-function-declaration]
rectangle_coordinates(&frame_to_draw, &xmin, &xmax, &ymin, &ymax);
你有什么想法可以解决我的问题吗?
解决方案
至少,应验证和纠正以下所有内容(如果需要)。
- 函数名在所有地方都必须相同(检查错字)。
- 返回类型必须在所有地方都相同。
- 参数列表必须在所有地方都相同。
在draw.h
你应该有类似的东西:
extern /type/ rectangle_coordinates(&frame_to_draw, &xmin, &xmax, &ymin, &ymax);
在哪里:
- /type/ 是函数的返回类型。
- 参数列表需要正确写入(我刚刚从提供的警告消息中复制/粘贴)。
在两者中draw.c
,ei_widget_frame.c
你应该有:
#include "draw.h"
推荐阅读
- javascript - 从 React Native 成功上传图片到 Cloudinary 不返回 URL
- python - 创建累积列表 pandas
- php - 通过 PHP 通过 id 预填充表单输入,但在表单的 HTML 中不使用 echo
- java - 启动尤里卡服务器后如何将尤里卡服务器注册为客户端
- php - 如何比较 swtich 语句中的宽度和高度?
- ios - CAEmitterLayer在swift中的发射经纬度
- c# - DataGrid取消选择选定的行wpf
- android - 从全局动作的目的地返回结果
- odata - 未找到 Acumatica Odata 通用查询
- ios - 是否可以在 NSFetchedResultsController 的 NSSortDescriptor 中使用 UUID?