printf
和 cprintf
是 C 语言中用于格式化输出的函数。printf
是标准库函数,用于向标准输出(通常是控制台)打印格式化的字符串。而 cprintf
是 Windows 平台特有的函数,用于向控制台打印彩色文本。
printf
cprintf
(仅限 Windows)以下是一个使用 printf
在 C 语言中显示简单表格的示例:
#include <stdio.h>
int main() {
printf("----------------------------\n");
printf("| Name | Age | Gender |\n");
printf("----------------------------\n");
printf("| Alice | 30 | F |\n");
printf("| Bob | 25 | M |\n");
printf("| Charlie | 35 | M |\n");
printf("----------------------------\n");
return 0;
}
对于 Windows 平台,可以使用 cprintf
来显示彩色表格:
#include <stdio.h>
#include <windows.h>
void setColor(int color) {
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hConsole, color);
}
int main() {
setColor(FOREGROUND_BLUE | FOREGROUND_INTENSITY); // 蓝色标题
printf("----------------------------\n");
setColor(FOREGROUND_WHITE); // 白色正文
printf("| Name | Age | Gender |\n");
setColor(FOREGROUND_BLUE | FOREGROUND_INTENSITY); // 蓝色分隔线
printf("----------------------------\n");
setColor(FOREGROUND_WHITE); // 白色正文
printf("| Alice | 30 | F |\n");
printf("| Bob | 25 | M |\n");
printf("| Charlie | 35 | M |\n");
setColor(FOREGROUND_BLUE | FOREGROUND_INTENSITY); // 蓝色分隔线
printf("----------------------------\n");
setColor(FOREGROUND_WHITE); // 恢复默认颜色
return 0;
}
cprintf
是 Windows 特有的,如果在非 Windows 平台上使用会导致编译错误。#ifdef _WIN32
#include <windows.h>
void setColor(int color) {
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hConsole, color);
}
#else
#define setColor(color)
#endif
通过这种方式,可以在 Windows 上使用彩色输出,而在其他平台上正常运行而不影响功能。
希望这些信息对你有所帮助!如果有更多具体问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云