使用 C++ 在命令行中打印彩色文字
2009-10-29 18:11
851 查看
在 Windows 中,可以使用函数 SetConsoleTextAttribute() 来设置控制台的背景和前景的颜色。关于该函数的详细接口可以参考 MSDN ,这里仅仅举一个例子来介绍如何使用它。
我们可以定义一个自己的函数来同时设置前景和背景的颜色,参数1表示前景颜色,参数2表示背景颜色。
下面在 main() 函数中调用该函数:
我们可以定义一个自己的函数来同时设置前景和背景的颜色,参数1表示前景颜色,参数2表示背景颜色。
// 参数1和参数2分别是前景的颜色和背景的颜色。 // // 参数1可选择一下值: //// FOREGROUND_BLUE Text color contains blue. //// FOREGROUND_GREEN Text color contains green. //// FOREGROUND_RED Text color contains red. //// FOREGROUND_INTENSITY Text color is intensified. // // 参数2可选择一下值: //// BACKGROUND_BLUE Background color contains blue. //// BACKGROUND_GREEN Background color contains green. //// BACKGROUND_RED Background color contains red. //// BACKGROUND_INTENSITY Background color is intensified. bool SetConsoleColor( WORD forceGroundColor, WORD backGroundColor ) { // 获得缓冲区句柄。参数可以选择一下三种值: //// STD_INPUT_HANDLE 标准输入的句柄 //// STD_OUTPUT_HANDLE 标准输出的句柄 //// STD_ERROR_HANDLE` 标准错误的句柄 HANDLE handle = GetStdHandle( STD_OUTPUT_HANDLE ); if( handle == 0 ) return false; //设置文本及背景颜色。 BOOL ret = SetConsoleTextAttribute( handle, forceGroundColor | backGroundColor ); return( ret == TRUE ); }
下面在 main() 函数中调用该函数:
#include <windows.h> #include <iostream> int main() { SetConsoleColor( FOREGROUND_GREEN, BACKGROUND_BLUE ); std::cout << "Hello green !" << std::endl; SetConsoleColor( FOREGROUND_RED, BACKGROUND_BLUE | FOREGROUND_GREEN ); std::cout << "Hello red !" << std::endl; return 0; }
相关文章推荐
- python在windows的cmd中打印彩色文字
- Qt、C++小票打印----端口(com)、并口(lpt)----并介绍了qt中qwebview的使用及js通信
- C++程序 使用命令行窗口显示Debug信息
- [调试][程序打印]当printf不能用时,使用C++的不定参数来搞定OutputDebugString打印
- C++ - 使用copy函数打印容器(container)元素
- 使用GDB命令行调试器调试C/C++程序
- 使用GDB命令行调试器调试C/C++程序【转】
- 用C++编一程序,先输出一行sun mon tue wed thu fri fri,接着使用右对齐打印出日期,像日历那样
- 使用C++打印hello world
- shell中使用echo打印彩色字体和彩色背景的方法
- 使用GDB命令行调试器调试C/C++程序
- 杂学杂记(四)C/C++下使用system()函数执行命令行命令简述
- linux使用C++做到类似mysql的命令行表格输出(处理中英文在命令行对齐问题)
- [转] 使用 gperf 实现高效的 C/C++ 命令行处理
- python在windows的cmd中打印彩色文字
- C++ -> 在Window7 命令行下使用微软编译工具 cl.exe
- 使用GDB命令行调试器调试C/C++程序
- C++使用宏来方便定位打印 log
- stackoverflow | C/C++ | 如何不使用循环和判断语句实现“打印从1到100之间的数字”
- Python在windows命令行下输出彩色文字