ios - 如何调用一个.c文件里的方法?
伊谢尔伦
伊谢尔伦 2017-04-17 15:42:48
[iOS讨论组]

RT,最近在折腾着把一个UCGUI+SDL的程序编译到iOS设备上,遇到一个调用c文件方法出错的问题(好吧,我知道我表达渣,还是看图吧

如上图,LSDSIM.c里面这个方法

    drawPoint(getSurface(), x, y,Index);

调用了LCDSDL.c的

__inline int drawPoint(SDL_Surface * dst, int x, int y, int  color)
{
    return SDL_DrawPointB(dst, x, y, TransColors(color));
}

然后还调用了GUIXSDL.c的

SDL_Surface* getSurface()
{
    return g_screen_surface;
}

然后报错Implicit declaration of function 'drawPoint' is invalid in C99 搜过网上说的一些说法是改Build Setting 的 C Language Dialect,然并卵,我觉得应该是找不到这些方法才会导致这样,求教要怎么调用.c里面的方法,或者有别的什么解决方法
ps:我C语言学的很烂,正准备恶补一番,大家有什么推荐看的书?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(1)
黄舟

书可以直接看K&R的《The C programming language》,这是因为没有声明,你需要加入那个.c对应的.h文件。如果没有对应的.h文件或者对应的.h文件里没有对应函数的声明的话,你也可以通过在调用前声明extern函数的方式来解决。不过最好还是声明在对应的.h里。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号