对不起,如果这已被反复询问,但我只是没有得到这个C代码有什么问题,因为它编译没有问题,直到有一天它开始抱怨“C2009:初始化器不是一个常量“在这个头的第9和第10行:初始化程序不是一个常量错误
// CONIO2.H
#ifndef CONIO2_H_INCLUDED
#define CONIO2_H_INCLUDED
#ifndef _WINDOWS_
#include <windows.h>
#endif
void clrscr(void) {
int Written = 0;
COORD ord;
ord.X = 0;
ord.Y = 0;
FillConsoleOutputCharacter(GetStdHandle(STD_OUTPUT_HANDLE), 32, 80 * 25, ord, &Written);
}
//MAIN.C
#include <stdio.h>
#include <conio2.h>
编辑:我发现错误。我使用Eclipse CDT插件来开发C应用程序,但它没有正确设置路径。我不得不使用配置来使它工作,但无论如何感谢!
由于conio2.h不是一个编译器库,而是一个用户自制的头文件,包括它使用'#include“conio2.h”'。但是,这不太可能是错误的原因。 – Lundin
如果使用'/ P'预处理并查看生成的.i文件中的函数,是否有任何线索? –