// screen.h
#ifndef screen_h
#define screen_h
#define MAC 1
#define WIN 2
#define LNX 3
#ifdef PLATFORM
# undef PLATFORM
#endif
#define PLATFORM MAC
void screen_init();
#endif
// screen.c
#include <string.h>
#include <stdlib.h>
#include "screen.h"
#if PLATFORM == MAC
#include <curses.h>
void screen_init(){
erase();
}
#endif
我不明白为什么它在屏幕上看不到我的原型。
如有任何建议/提示,欢迎光临!
发布于 2017-06-30 10:30:47
几分钟前我遇到了类似的错误。在头文件中添加了相关的函数声明后,错误就消失了。
另外,有些人说取消编译选项'-Wmissing-prototypes‘应该是可行的,但我还没有尝试过。祝好运。
发布于 2018-08-23 00:17:59
我今天才遇到这个问题。
我定义了一个仅在内部使用的函数
void func(void) {
}
int main(void) {
func();
}
这会给我一个警告。我不得不在文件的开头添加原型,以消除警告。
void func(void);
void func(void) {
}
int main(void) {
func();
}
https://stackoverflow.com/questions/9541768
复制相似问题