文件指针错误error: initializer element is not constant
今天写代码的时候碰到了这个问题,上网查了好久才解决,忘了在哪看的了,但是解决途径总结了下来。
代码是这样的:
#include <stdio.h>
#include <stdlib.h>
FILE * outputA = fopen("/home/a.txt", "rb");
FILE * outputB;
FILE * input;
int main() {
...
...
return 0;
}
编译报错:
a.c:4:18: error: initializer element is not constant
FILE * outputA = fopen("/home/a.txt", "rb");
解决方法:
文件指针初始化的时候不赋值。
#include <stdio.h>
#include <stdlib.h>
FILE * outputA;
FILE * outputB;
FILE * input;
int main() {
outputA = fopen("/home/a.txt", "rb");
...
return 0;
}