linux C语言 curses的问题
来源:互联网 发布:apache 文件服务器 编辑:程序博客网 时间:2024/06/11 17:42
http://zhidao.baidu.com/link?url=3EqZSXCVQFL4CW7E4pMe4qlR7Ha5uWmkOKw_Pe2D4asVxPBS0TjYg0t6IwaJ7KekOA0zDvZErjRTxMKovWutna
#include<stdio.h>#include<curses.h>int main(){start_color();init_pair(1, COLOR_BLUE, COLOR_GREEN);attron(COLOR_PAIR(1));printf("good night");attroff(COLOR_PAIR(1));return 0;}请问这样写输出不了有色字符 为什么能详细和我说下 要吧printf()里面的东西变成有色的显示在物理屏幕上 怎么操作------------------------------
要用curses库,程序开始的时候要加initscr()来初始化屏幕,退出程序前要加endwin()来结束。#include<stdio.h>#include<curses.h>int main(){iniscr(); /*这里要初始化*/start_color();init_pair(1, COLOR_BLUE, COLOR_GREEN);attron(COLOR_PAIR(1));/*printf("good night");*/addstr("good night"); /*printf改为addstr*/attroff(COLOR_PAIR(1));endwin(); /*结束前要调用endwin*/return 0;}
追问
没用啊 连good night都输出不了了
回答
endwin之前加个getch();
attroff(COLOR_PAIR(1));
getch(); //这里加个getch来暂停一下
endwin(); /*结束前要调用endwin*/
这是我的运行结果:
追问
那我要 printf( “%d”, a ); 把这个执行结果给输出来怎么弄 就是单单的吧执行结果输出彩色文字
回答
printf本来就只是往标准输出里送出这个a,与终端无关
如果你非要用printf,那你就不能用curses
需要看你使用的终端是什么类型,使用终端提供的控制参数也能实现
如果是vt100的话,控制命令如下
/33[30m -- /33[37m 设置前景色
/33[40m -- /33[47m 设置背景色
背景颜色范围:40----49
40:黑
41:深红
42:绿
43:黄色
44:蓝色
45:紫色
46:深绿
47:白色
前景字符颜色:30-----------39
30:黑
31:红
32:绿
33:黄
34:蓝色
35:紫色
36:深绿
37:白色
比如你要输出 蓝色的字,绿色的背景,那就
printf("\033[34;42m"); //设置前景为蓝色 设置背景为绿色
printf("hello world!"); //输出
printf("\033[0m"); //关闭颜色控制
0 0
- linux C语言 curses的问题
- linux下的c 编程------curses 库
- linux下的c 编程------curses :color
- linux下的c 编程------curses :Window
- linux下的c 编程------curses :color
- Linux curses编程的一个问题
- Linux下c语言的图形编程(转) curses.h 函式库
- 以下是UNIX linux 下c语言的图形编程 curses库
- 解决putty终端中显示linux系统中C编程使用curses中文乱码的问题
- UNIX下c语言的图形编程--curses.h 函式库
- UNIX下C语言的图形编程curses.h函式库
- UNIX下c语言的图形编程--curses.h 函式库
- UNIX下c语言的图形编程--curses.h 函式库
- UNIX下C语言的图形编程-curses.h函数库
- Linux c 贪吃蛇 无curses、多线程、信号的实现
- Linux Unix C 中的curses库——curses.h
- Ubuntu C语言 curses 贪吃蛇 小游戏
- linux curses 菜色的应用
- iOS工程中的info.plist文件的完整研究
- Oracle 内置数据类型 -- 字符
- 常用YUV转RGB 代码
- 深入java--容器深入研究
- hdu3698——Let the light guide us
- linux C语言 curses的问题
- struts拦截器的使用
- Linux内存管理之mmap详解
- ffmpeg2.5编译方法
- 遗忘半年没看的体检结果,吓了我一跳
- JAVA 求当前日期的下一天、下一周、下一个月,向前求解也类似
- C3P0使用详细说明
- 关于我大三之后的未来
- iOS之我见