我在名为 variables.h 的头文件中定义了一些外部变量,如下所示:
#ifndef VARIABLES_H
#define VARIABLES_H
extern int var1;
extern int var2;
#endif
然后我将它添加到我的源文件中。
编译器警告我以下内容:
error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘var1’
这对每个变量都进行,并在最终变量处结束。
问题是什么?
每个变量的错误都出现在 variables.h 中。
文件.h:
#ifndef FILE_H
#define FILE_H
void do_sth(void);
void do_sth_else(void);
#endif
文件.c:
#include "variables.h"
/* Quit */
void do_sth(void) {
/* do sth */
}
void do_sth_else(void) {
/* do sth else */
}
就这样。错误是:
error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘var1’
error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘var2’