VT100

简述

在C语言中,控制打印颜色可以通过定义一些宏来实现,这需要利用VT100的控制符。例如,可以定义一些宏来控制前景色和背景色,如设置前景色为绿色,背景色为黑色,用的控制字符是 \033[32;40m [1][3]。

此外,也可以在命令行中使用 echo 命令,或者在C程序中使用 printf 函数来输出VT100的控制字符,从而实现颜色控制。例如,要设置字体颜色,可以使用 \033[32m 这样的控制符,总的来说,无论是使用宏定义还是直接输出控制字符,都可以很方便地在C语言中控制 printf 的打印颜色。

VT100控制码

\33[nA光标上移n行
\33[nB光标下移n行
\33[nC光标右移n行
\33[nD光标左移n行
\33[y;xH设置光标位置
\33[2J清屏
\33[K清除从光标到行尾的内容
\33[s保存光标位置
\33[u恢复光标位置
\33[?25l隐藏光标
\33[?25h显示光标

VT100数字型控制码

\33[0m关闭所有属性
\33[1m设置高亮度
\33[4m下划线
\33[5m闪烁
\33[7m反显
\33[8m消隐
\33[30m – \33[37m设置前景色
\33[40m – \33[47m设置背景色

颜色

VT100的颜色输出分为,注意要同时输出前景的字符颜色和背景颜色。

背景颜色范围:40----49

    40:黑 
  41:深红 
  42:绿 
  43:黄色 
  44:蓝色 
  45:紫色 
  46:深绿 
  47:白色 

前景字符颜色:30-----------39

  30:黑 
  31:红 
  32:绿 
  33:黄 
  34:蓝色 
  35:紫色 
  36:深绿 
  37:白色 

例子

printf("\33[背景色;字体色m 输出字符串 \33[0m\n" );
#include<stdio.h>
int main()
{
    printf("-------背景颜色--------\n");
    printf("\33[41mhello,world\33[0m\n" );
    printf("\33[42mhello,world\33[0m\n" );
    printf("\33[43mhello,world\33[0m\n" );
    printf("\33[44mhello,world\33[0m\n" );
    printf("\33[45mhello,world\33[0m\n" );
    printf("\33[46mhello,world\33[0m\n" );
    printf("\33[47mhello,world\33[0m\n" );
    printf("-------字体颜色--------\n");
    printf("\33[;37mhello,world\33[0m\n" );
    printf("\33[;36mhello,world\33[0m\n" );
    printf("\33[;35mhello,world\33[0m\n" );
    printf("\33[;34mhello,world\33[0m\n" );
    printf("\33[;33mhello,world\33[0m\n" );
    printf("\33[;32mhello,world\33[0m\n" );
    printf("\33[;31mhello,world\33[0m\n" );
    printf("-------背景+字体颜色-------\n");
    printf("\33[41;37mhello,world\33[0m\n" );
    printf("\33[42;36mhello,world\33[0m\n" );
    printf("\33[43;35mhello,world\33[0m\n" );
    printf("\33[44;34mhello,world\33[0m\n" );
    printf("\33[45;33mhello,world\33[0m\n" );
    printf("\33[46;32mhello,world\33[0m\n" );
    printf("\33[47;31mhello,world\33[0m\n" );
    
    return 0;
}

在这里插入图片描述

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值