📅  最后修改于: 2023-12-03 15:33:47.797000             🧑  作者: Mango
在编写程序时,有时需要以其他颜色高亮显示文本。本文将介绍如何使用 printf 函数输出蓝色文本。
在控制台输出蓝色文本最简单的方法是使用 ANSI Escape Code。 ANSI(美国国家标准化协会)是一个非营利组织,创建了一组可在控制台上使用的控制字符。其中之一是用于改变文本颜色的 ESC (Escape)字符。
在大多数 Unix / Linux 终端和 Windows 控制台中,可以使用以下 ANSI Escape Code 来输出蓝色文本:
printf("\033[0;34m Blue color \033[0m\n");
上面的代码中,\033[0;34m
表示将以下文本颜色更改为蓝色,\033[0m
表示将颜色更改为默认颜色。
请注意,该代码仅在支持 ANSI Escape Code 的终端中运行。
在 Windows 系统中,可以使用 Windows API 函数来设置控制台文本颜色。以下代码将文本颜色更改为蓝色:
#include <windows.h>
#include <stdio.h>
int main() {
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hConsole, FOREGROUND_BLUE);
printf(" Blue color \n");
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);
return 0;
}
上面的代码中,GetStdHandle
函数打开了一个句柄来访问标准输出流,并通过 SetConsoleTextAttribute
函数将文本颜色更改为蓝色。其次,将颜色再次更改为默认颜色。
本文介绍了两种在控制台输出蓝色文本的方法。用 ANSI Escape Code 更简单,但仅限于其他 ANSI Escape Code 终端,而使用 Windows API 则可在 Windows 系统上运行。
返回的代码片段:
```c
printf("\033[0;34m Blue color \033[0m\n");
#include <windows.h>
#include <stdio.h>
int main() {
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hConsole, FOREGROUND_BLUE);
printf(" Blue color \n");
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);
return 0;
}