gpt4 book ai didi

c - 在 Cygwin 下用 C 打印彩色文本

转载 作者:行者123 更新时间:2023-12-04 11:53:46 25 4
gpt4 key购买 nike

我在 C 中有一些代码可以打印出不同颜色的文本行。

它正在处理 Linux 使用转义字符(例如 here )。
它正在处理 视窗 使用 SetConsoleTextAttribute

但我的问题是在使用 Cygwin 时。
转义字符在 Cygwin 上不起作用。
并调用 GetConsoleScreenBufferInfo总是失败,并且 getLastErrorText() 给我这条消息:

Incorrect function. (0x1).



所以我的问题是:如何从 Cygwin 终端中运行的 C 程序中打印彩色文本?
我需要安装特殊的库吗?

最佳答案

感谢 SzG 和 M Oehm 的评论。

正如您所说,M Oehm,linux 示例正在运行。

我在我的代码中发现了问题。我使用的是 Windows 的颜色值而不是 Linux 的那些.

例如:

_ftprintf(target, TEXT("%c[%d;%dm%s%c[K\n"), 
0x1B, foreground, background, printBuffer, 0x1B);

的值前景背景不正确。

现在它正在工作。

关于c - 在 Cygwin 下用 C 打印彩色文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23148138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com