首页 > 如何调用一个.c文件里的方法?

如何调用一个.c文件里的方法?

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语言学的很烂,正准备恶补一番,大家有什么推荐看的书?


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

【热门文章】
【热门文章】