我正在使用Dev-CPP(但在C中编程),并且头文件不起作用。我去了编译器选项;目录; c包含并检查目录是否正确,它是。包含文件存储在C:\ Dev-Cpp \ include中,并且设置为接收它们。
例如:
#include <conio.h>
int main(int argc, char *argv[])
{
textcolor(1);
printf("Why won't header files work? \n");
system("PAUSE");
return 0;
}
我已尝试过其他几个头文件,但它们也无法正常工作。我确定答案非常明显,但我显然太愚蠢了。我也使用MinGW作为编译器,(标配dev-cpp)。请帮我。
答案 0 :(得分:2)
conio.h头文件不能与dev cpp一起使用,因为它不是c标准的一部分。 http://www.bloodshed.net/dev/faq.html
答案 1 :(得分:1)
textcolor()很老。(也许是borland c ++?)
e.g。像这样重新定义
#include <Windows.h>
#include <stdio.h>
#include <conio.h>
void textcolor(unsigned short color){
HANDLE hStdout;
WORD wAttributes;
CONSOLE_SCREEN_BUFFER_INFO csbi;
hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
GetConsoleScreenBufferInfo(hStdout, &csbi);
wAttributes = color ;
if (color & 0x08) wAttributes |= FOREGROUND_INTENSITY ;
SetConsoleTextAttribute(hStdout, wAttributes);
}
/*
#define FOREGROUND_BLUE 0x0001
#define FOREGROUND_GREEN 0x0002
#define FOREGROUND_RED 0x0004
#define FOREGROUND_INTENSITY 0x0008
#define BACKGROUND_BLUE 0x0010
#define BACKGROUND_GREEN 0x0020
#define BACKGROUND_RED 0x0040
#define BACKGROUND_INTENSITY 0x0080
*/
int main(int argc, char *argv[]){
textcolor(1);
// textcolor(FOREGROUND_BLUE);
printf("FOREGROUND_BLUE \n");
textcolor(4);
printf("FOREGROUND_RED \n");
textcolor(7);
system("PAUSE");
return 0;
}