我刚开始用C学习编程.
第一个问题是选择我应该在哪个平台上学习它,我选择了Ubuntu.
我找到了一个GCC编译器来编译我的项目,它对我来说很好.我通过终端运行我编译的项目.
但是当我想编写一个必须在彩色背景上显示文字的程序时,我明白终端并没有帮助我.实际上我正在学习用于Windows编程的课程,他们使用Borland C 5.2,但这些课程是在2007年编写的
所以我想知道,我应该在Ubuntu 10.10中运行我编译的程序,以正确查看结果?
实际上我试图转移到Windows,但我的计算机上的Ubuntu工作得更快,我认为在Ubuntu而不是Windows中工作更容易.
解决方法:
在没有任何工具包的情况下打印彩色消息的最简单方法是使用VT100转义命令:
http://www.termsys.demon.co.uk/vtansi.htm#colors
所以你可以这样写:
printf("\x1b[31mThis is red text\x1b[0m\n");
printf("\x1b[32mThis is green text\x1b[0m\n");
但此代码仅适用于兼容VT100的终端(几乎所有Unix系统的终端).最好的方法是在着色输出之前检查TERM环境变量.
免责声明:如果您想编写能够使用所有终端类型的代码,那么您应该使用类似ncurses的库.