C语言中printf的一些特殊用法helloworld的流水灯

无论我们接触哪一门编程语言第一个程序基本上都是hello world,所以hello world又被誉为世界上最伟大的程序。所以我在这里介绍一个在编写hello world的一些特殊用发。

  首先介绍一些在printf中的一些格式化控制符。

printf("\033[47;31mhello world\033[5m");  
47是字背景颜色, 31是字体的颜色, hello world是字符串.  后面的\033[5m是控制码. 颜色代码: QUOTE: 
字背景颜色范围: 40--49                  

字颜色: 30--39      

   40: 黑                          30: 黑       

  41: 红                          31: 红         

42: 绿                          32: 绿     

    43: 黄                          33: 黄      

   44: 蓝                          34: 蓝        

 45: 紫                          35: 紫      

   46: 深绿                        36: 深绿  

       47: 白色                        37: 白色 ANSI控制码: QUOTE: 
  \033[0m  关闭所有属性   

 \033[1m  设置高亮度 

   \03[4m  下划线   

 \033[5m  闪烁  
\033[8m  消隐  
  \033[30m  --  \033[37m  设置前景色    

\033[40m  --  \033[47m  设置背景色   

 \033[nA  光标上移n行   

 \03[nB  光标下移n行  

  \033[nC  光标右移n行   

 \033[nD  光标左移n行 

   \033[y;xH设置光标位置

    \033[2J  清屏  
  \033[K  清除从光标到行尾的内容 

   \033[s  保存光标位置  

  \033[u  恢复光标位置  

  \033[?25l  隐藏光标
\33[?25h  显示光标

等等。根据以上提供的printf中的一些特殊参数我用了以上参数中的一小部分实现了hello world的流水灯。并且把字体设置为红色。也就是说运行程序后在屏幕上显示的效果是从h每隔一秒钟显示出一个字符。显示完一次过后字重头开始显示。


 #include <stdio.h>

 int main()
 {
       int i=0;
       while(1)
       {
           for(i=0;i<10;i++)
           {
               printf("\r\033[47;31mhello world\033[%dD\033[K",10-i);
              fflush(stdout);
              sleep(1);
          }
      }
      return 0;
 }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值