QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2159|回复: 6

写一个Linux终端程序,如何用c编程实现改变输出的字符颜色

[复制链接]
发表于 2004-6-1 14:23:49 | 显示全部楼层 |阅读模式
textcolor可以吗?
发表于 2004-6-1 23:46:29 | 显示全部楼层
printf("\033[32m%s","test");
大概就这种形式!
30m,31m,--37m共8种颜色!
回复

使用道具 举报

 楼主| 发表于 2004-6-2 09:00:53 | 显示全部楼层
有函数可以实现吗?
回复

使用道具 举报

发表于 2004-6-2 09:49:39 | 显示全部楼层
自己封装一下不就行了,ncurses应该有现成的,但估计大家都不喜欢用那东西。
回复

使用道具 举报

发表于 2004-6-2 10:54:56 | 显示全部楼层
ncurses太麻烦了!
我前面介绍的非常简单!
能够满足一般需要!
回复

使用道具 举报

发表于 2004-6-2 15:07:25 | 显示全部楼层
[quote:069401b0dd="taxuewuhen"]printf("\033[32m%s","test");
大概就这种形式!
30m,31m,--37m共8种颜色![/quote]

\033[32m是一个终端命令,想显示颜色没有通用的方法或函数,因为这是依赖于特定终端的。你可以确定你要使用的终端是使用那种规格的,例如vt100规格,或者ansi规格,然后再参照相应规格的手册。
回复

使用道具 举报

发表于 2004-6-3 22:03:05 | 显示全部楼层
定义一下嘛,或是mozilla所说“封装”:

#define NORMAL "\033[0m"
#define RED "\033[1;31m"
#define GREEN "\033[1;32m"
#define YELLOW "\033[1;33m"
...
...
...
printf(GREEN "Green color\n");
printf(RED "Red color\n");
...
printf(NORMAL);
...

"1;xxm"是亮色,"0;xxm"是暗色(一般可省略"0;")。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-8 04:53 , Processed in 0.042906 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表