当前位置: 首页 > news >正文

作一手房用什么做网站如何注册域名网站

作一手房用什么做网站,如何注册域名网站,教务系统,seo网站推广优化就找微源优化准备工作&#xff1a; 一.关于缓冲区 首先&#xff0c;咱们先来一段有意思的代码&#xff1a; #include<stdio.h> #include<unistd.h> int main() {printf("you can see me");sleep(5);} 你可以在你的本地运行一下&#xff0c;这里我告诉大家运行结果…

准备工作:

一.关于缓冲区

首先,咱们先来一段有意思的代码:

#include<stdio.h>
#include<unistd.h>
int main()
{printf("you can see me");sleep(5);}

你可以在你的本地运行一下,这里我告诉大家运行结果:这一段字符串等到程序运行结束后才被显示出来。有些同学感觉非常震惊,但这就是运行结果。

我们都知道,这段代码是顺序运行结构,就是从前往后依次执行,毫无疑问,这段字符串肯定被优先执行,那么,为什么没有被显示出来?这5秒内,字符串在什么位置?

字符串一直在缓冲取内,等到运行结束时,才被刷新出来。那,怎么才能让字符串在sleep前出现呢?

这里,我说明两种方式:

方式一:

#include<stdio.h>
#include<unistd.h>
int main()
{printf("you can see me\n");sleep(5);}

在printf中加入换行符,因为\n默认的是行刷新,

#include<stdio.h>
#include<unistd.h>
int main()
{printf("you can see me\n");printf("you can see ");sleep(5);}

 我们来运行一下,会发现:第一字符串打印出来了,第二个字符串等到程序结束时,才显示出来!

方式二:

#include<stdio.h>
#include<unistd.h>
int main()
{printf("you can see me\n");fflush(stdout)sleep(5);}

fflush(stdout)表示手动刷新缓冲区的操作。

二.\r,\n

\r是回车,\n是换行,所以\r\n 是回车换行,但是在语言层面,\n就代表着回车+换行。

 我们举个栗子:

#include<stdio.h>
int main()
{printf("aaaaa\r");printf("11");return 0;
}

运行结果是:

果真像我们分析的那样,程序运行完第一行,"aaaaa"被打印出来,然后光标回到行首,开始打印"11",这个位置原来的数据被后来的数据所覆盖,所以打出来,就是这个样子。

三.关于显示屏

其实,不知道大家有没有好奇过:我们的数字和字母都是怎么出现在显示屏的呢?原理很简单!!

在显示屏看来,不过是字符还是数组还是汉字,都是由字符构成,比如在显示屏上打印出1234,显示屏就把1234看作4个字符,然后点亮这4个字符的光点,所以,我们就看见了1234。

四.制作一个一分钟倒计时

#include<stdio.h>
#include<unistd.h>
int main()
{int num = 60;while (num){printf("%d\r", num);fflush(stdout);num--;}
}

二.制作一个进度条

效果演示:

写在前面,这个进度条,我们准备分文件写,分别为main.cc,process.cc,process.h,下面,将一一介绍各个文件的作用:

进度条代码:

makefile:

myproc:process.cc main.cc gcc -o myproc process.cc main.cc //-o后边的文件默认为生成的文件,其他的都是依赖文件
.PHONY:clean
clean:rm -f myproc

main.cc:

#include "process.h"int main()
{myprocess();}

代码so easy!!

process.h:

#include<stdio.h>
#include<string.h>
#include<unistd.h>#define Num 101
#define STYLE '#'const char lable[]="|/-\\";
extern void myprocess();

process.cc:

#include "process.h"void myprocess()
{int cnt=0;char buf[Num];memset(buf,'\0',sizeof buf);//利用字符串初始化函数,初始化字符串为0;while(cnt<Num){if(cnt<Num-1)buf[cnt]=TAIL;printf("[%-100s][%-3d%%][%c]\r",buf,cnt,lable[cnt%4]);//[%-100s]:先留出100个字符的长度,保证从前往后显示;%%:表示百分号buf[cnt++]=STYLE;fflush(stdout);usleep(50000);//usleep:和sleep效果相同,但usleep以微妙为单位,但sleep以秒为单位}printf("\n");
}

3、实现过程分析
 

进度条样式 :
主体样式为两个中括号包裹,中间 => 推进的方式呈现,比如:[======>]
主体右侧中括号位置保持不变,中间元素不断推进,比如:[=> ]
因此我们把中间主体 = 宏定义为 STYLE,把尾侧 > 宏定义为 TAIL

进度条百分比:
显示当前加载进度,用 [rate%] 显示,rate 随着进度条的不断推进而变化,而打印 %(转义字符)则需要两个 %%

进度条旋转字符:
显示加载样式,可以利用一个旋转的字符,例如 [] 的样式,顺时针不断旋转,依次为 “| / - \”,注意 \ 也是转义字符,因此需要两个 \ \,对此我们定义一个lable指针指向常量字符串const char *lable=" | / - \ "

http://www.shuangfujiaoyu.com/news/48411.html

相关文章:

  • 注册好网站以后怎么做深圳外贸网络推广渠道
  • 做网站新闻编辑十大流量平台
  • 网站轮播图的按钮怎么做的营销软文推广平台
  • 传奇sf网站怎么做百度网站下载安装
  • 如何开发手机版网站qq营销软件
  • jsp网站开发参考文献官网seo优化找哪家做
  • 淮南网站制作公司营销型网站有哪些平台
  • wordpress企业网站 教程免费有效的推广平台
  • 马鞍山住房建设委员会网站关键词优化哪家好
  • 去哪里找做网站 的客户百度商家入驻怎么做
  • 网站案例比较多的公司新闻博客软文自助推广
  • 电商网站设计公司可找亿企邦搜索引擎优化名词解释
  • 网站建设与百度推广海南网站制作公司
  • vs2010如何做网站北京百度公司地址在哪里
  • 网站制作的知识下载百度app最新版
  • 做国际网站有什么需要注意的新的seo网站优化排名 排名
  • 如何创建一个自己的网页seo推广关键词公司
  • 义乌网站建设九百度识别图片找图
  • 网站建设报告总结by网站域名
  • 政府网站开发的目的seo推广优化的方法
  • 网站设计制作代码整合营销传播的概念
  • 淘宝客如何做自己的网站seo一个月工资一般多少
  • 哪个网站可以做设计比赛谷歌seo是指什么意思
  • 网上做夫妻的网站关键词排名关键词优化
  • 网站开发的公司排名最近一周的新闻热点事件
  • 统计网站怎么做公司关键词seo
  • wordpress 3.6漏洞短视频seo营销
  • 网站后缀意思b站推广2024mmm已更新
  • 定做网站多少钱沈阳seo按天计费
  • 上海设计公司招聘手机优化大师下载2022