C语言printf输出输出数据类型,字体颜色等

C语言printf输出输出数据类型,字体颜色等

输出数据类型

  1. 符号描述
符号作用
%d十进制有符号整数
%u十进制无符号整数
%f浮点数
%s字符串
%c单个字符
%p指针的值
%e/E指数形式的浮点数
%x/X无符号以十六进制表示的整数
%o无符号以八进制表示的整数
%g自动选择合适的表示法
  1. 字宽设置
扩展字符字宽位数
b8位
h16位
l32位

输出字体颜色

  • 设定printf输出字体颜色:
    终端字符的颜色是用转义序列进行控制,是文本模式下的系统显示功能,和具体的语言无关。
    转义序列是以 ESC 开头,可以用 \033 完成相同的工作(ESC 的 ASCII 码用十进制表示就是 27, = 用八进制表示的 33)。
  1. 格式: \033[显示方式;前景色;背景色m

    • 显示方式:0(默认值)、1(高亮)、22(非粗体)、4(下划线)、24(非下划线)、5(闪烁)、25(非闪烁)、7(反显)、27(非反显)
    • 前景色:30(黑色)、31(红色)、32(绿色)、 33(黄色)、34(蓝色)、35(洋红)、36(青色)、37(白色)
    • 背景色:40(黑色)、41(红色)、42(绿色)、 43(黄色)、44(蓝色)、45(洋红)、46(青色)、47(白色)
  2. 例程:
      1)默认颜色:\033[0m
      2)绿色:\033[1;32;40m
      3)红色:\033[1;31;40m
      4)printf( “\033[1;31;40m 输出红色字符 \033[0m” )

宏定义方式

#include "stdio.h"

// printf 颜色定义
/***************************************************************
字背景颜色范围: 40--49                   字颜色: 30--39
                40: 黑                           30: 黑
                41: 红                           31: 红
                42: 绿                           32: 绿
                43: 黄                           33: 黄
                44: 蓝                           34: 蓝
                45: 紫                           35: 紫
                46: 深绿                         36: 深绿
                47: 白色                         37: 白色
****************************************************************/
#define PTCOLOR_NONE 		"\033[m"
#define PTCOLOR_RED 		"\033[0;32;31m"
#define PTCOLOR_LIGHT_RED 	"\033[1;31m"
#define PTCOLOR_GREEN 		"\033[0;32;32m"
#define PTCOLOR_LIGHT_GREEN "\033[1;32m"
#define PTCOLOR_BLUE 		"\033[0;32;34m"
#define PTCOLOR_LIGHT_BLUE 	"\033[1;34m"
#define PTCOLOR_DARY_GRAY 	"\033[1;30m"
#define PTCOLOR_CYAN 		"\033[0;36m"
#define PTCOLOR_LIGHT_CYAN 	"\033[1;36m"
#define PTCOLOR_PURPLE 		"\033[0;35m"
#define PTCOLOR_LIGHT_PURPLE "\033[1;35m"
#define PTCOLOR_BROWN 		"\033[0;33m"
#define PTCOLOR_YELLOW 		"\033[1;33m"
#define PTCOLOR_LIGHT_GRAY 	"\033[0;37m"
#define PTCOLOR_WHITE 		"\033[1;37m"

#define ERROR (1)
#if (ERROR)
#define xerror(fmt, args...)	printf( RED "ERROR <%s : %d> => " fmt " " NONE, __FUNCTION__, __LINE__, ##args)
#else
#define xerror(fmt, args...)
#endif

int main(void)
{
	xerror("error!\n");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SongYuLong的博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值