【问题标题】:Change color of stdin in C (like in fish shell)在 C 中更改标准输入的颜色(如在鱼壳中)
【发布时间】:2020-10-29 05:37:34
【问题描述】:

我正在尝试编写一个简单的 shell。我只想更改用户键入的文本的颜色,这些文本将来将用于语法高亮等内容。我可以为此使用标准库还是需要使用 ncurses 之类的东西。更改输出颜色非常容易。有没有类似的解决方案?

提前致谢。

【问题讨论】:

  • 我想你可以在这里找到这个stackoverflow.com/questions/3219393/…
  • 该问题用于输出。输入的工作方式是否相同
  • 如果我没记错的话,你使用序列来设置终端的颜色。无论输入或输出。所以,如果你设置红色,如果你做一个scanf,颜色应该是红色的。
  • @Robert 谢谢,我会试试的。你知道我在哪里可以找到那个吗?
  • 找到什么? Robert 发布的链接中列出了设置颜色的顺序。

标签: c unix


【解决方案1】:

看看herehere

我认为这个示例代码应该对您有所帮助,

#include<stdio.h>

int main()
{
    int num;
    printf("%s", "\033[92mEnter Number : \033[34m");
    scanf("%d", &num);
    printf("%s", "\033[0m");
    return 0;
}

coe 上方将以绿色打印Enter number : ,并以蓝色打印数字,

注意:确保您的终端支持 Windows 10 的 ANSI 转义颜色代码 see here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-12
    • 2022-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-20
    • 2021-08-13
    • 1970-01-01
    相关资源
    最近更新 更多