conio.h 不包含 textcolor()?

标签 c windows header dos

我一直在研究在用 C 编写的 DOS 程序中使用颜色。有人告诉我 conio.h 具有 textcolor() 函数,但是当我在我的代码中使用它时,编译器/链接器抛出错误提示我有一个未定义的函数引用。

conio.h 真的有这个功能还是有人告诉我?

谢谢:)

最佳答案

不,conio.h 库没有定义 textcolor 函数。 可以定义该函数的方法之一如下(包括 windows.h 库):

void textcolor (int color)
{
    static int __BACKGROUND;

    HANDLE h = GetStdHandle ( STD_OUTPUT_HANDLE );
    CONSOLE_SCREEN_BUFFER_INFO csbiInfo;


    GetConsoleScreenBufferInfo(h, &csbiInfo);

    SetConsoleTextAttribute (GetStdHandle (STD_OUTPUT_HANDLE),
                             color + (__BACKGROUND << 4));
}

关于conio.h 不包含 textcolor()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8675119/

相关文章:

c - C 中的数组初始化问题

c++ - struct 定义中的 typedef 用法

java - 安装 FX 体验工具

c - 具有不同格式说明符的 scanf() 函数

c - 如何打印交易品种的表格,交易品种名称

我们可以在 doxygen 文档中创建自己的字段吗?

c - Sqlite3,c-api,在windows上安装

windows - MSP 与 MSI 封装。哪个用于补丁?

ios - 分组的 UITableView 粘性页眉/页 footer 分

c - 让函数互相调用 - C