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

ps教学网站制作步骤网站建设公司哪家好?该如何选择

ps教学网站制作步骤,网站建设公司哪家好?该如何选择,wordpress钩子的意思,开发小程序的目的目录 使用工具的简单介绍: \r : fflush : 倒计时的创建: 倒计时的工作原理: 进度条的创建: 不同场景下、打印任意长度的进度条: main .c procbor.c 测试效果: 使用工具…

 

 

目录

使用工具的简单介绍: 

\r  :

fflush  :

倒计时的创建:

倒计时的工作原理:

 进度条的创建:

 不同场景下、打印任意长度的进度条:

main .c  

procbor.c 

测试效果:

使用工具的简单介绍: 

在创建进度条之前,首先要明白两个工具,fflush 和  \r 

\r  :

熟悉键盘以及经常使用键盘的小伙伴应该知道,现在的键盘上的enter 回车键 和早之前的回车键样式是不一样的,如下图所示:

而且,还有一个大家并不是非常熟悉的知识,回车键的功能其实是两个,一个是换行,一个是回车。

所谓换行就是将光标从这一行变到下一行中,且是垂直下落,除此之外光标位置不会有其他的移动。

而回车就是回到当前行的最前端最开头位置。

在Linux系统中,换行和回车是并不是像键盘上的回车键一样合在一起使用,而是分别由两个命令控制着。  

\r,就是Linux中的回车,在Linux的文件文本中的作用是将光标移动到当前行的开头位置,即回车。它通常与\n(换行符)一起使用,表示换行并回到行首。

fflush  :

fflush函数的作用是刷新缓冲区,将缓冲区中的数据立即写入到文件中。它可以用来确保数据被及时写入文件,而不是等到缓冲区满或程序结束时才写入。

在Linux中,通常使用fflush(stdout) 将缓冲区的数据冲刷到显示器上,让数据显现。

倒计时的创建:

倒计时的工作原理:

倒计时指的是在一个位置上的数字随着光标的不断闪烁而不断的更新减小,直到为0。

在如果要在Linux上实现倒计时,除了上述的两个工具外还需要额外了一个工具,sleep  休眠命令,休眠命令可以解决倒计时数字的停顿的问题。

在Linux实现的原理则

  • 利用缓冲区实现一个简单的倒计时,使用\r返回光标位置并清除缓冲区数据,但是使用fflush将缓冲区的数据提取到了显示器文件中。
  • 单单只有\r是不行的,因为\r虽然把光标的位置进行了返回(输入一个数字光标会移动到下一个位置,但是\r会在移动下一个位置后会返回回去),但是会将数字从缓冲区中删除清空,导致在显示器中显示不出来,所以需要fflush进行提取 

 进度条的创建:

一个进度条最基本的要求是要有进度读条,要有显示进度读条占总数据占比的百分比数字,要有旋转的表示进度正在进行中的光标图案。

在Linux中,可以使用 #  =  等符号表示进度读条,而根据之前倒计时的操作,我们直到需要定义一块区域作为缓冲区,随后不断地更新和刷新缓冲区内部的数据,将其数据显示到显示屏上依次达到进度条不断地在更新进度,不断地在增长的效果。

同时,为了表示进度条不断地在增长,因此需要使用循环函数在缓冲区中不断地添加#来显示进度条的增长。

对于百分比数据,可以利用定义好的缓冲区大小来通过计算得到,在上图中,定义的百分比大小是101,其中的1表示的是最初始的数据,也就是 \0 来表达进度是0 ,所以只要按照#的个数来计算百分比的占比是多少。

同时为了保证进度条是一个不会因为进度的增长而不断变长,而是有一个固定长度的,所以使用%-100实现距离的扩充以及往右边增长进度的效果。 

而百分比的数据则需要打印除#号的个数以及加上%即可完成,注意%符号在文件中需要两个%才能在显示屏上显示出来。

最后,光标的添加,可以将光标的图案进行展开,然后利用\r的特性和#号个数的和光标的展开后的字符数进行计算,计算出每一个#的光标的图案,同时需要注意的是\符号需要两个\才能打印出来!

 不同场景下、打印任意长度的进度条:

因为进度条是不会单独出现的,进度条要配合具体的场景使用,所以在此处我们建立一个文件下载进度的进度条。 

main .c  

拥有下载场景的进度条,进行下载文件:

下载文件的大小:filesize  =  100兆b  = 100 * 1024 * 1024 * 1.0

下载场景 download  

当前累计下载的数据量 current = 0.0 初始

只要下载量小于文件大小就要一直下载 while (current < = filesize)

网速下载带宽 /下载速度: bandwidth =  1024 * 1024 *1.0   本来不是1.0的因为网速的下载速度是随机的但这里为了方便就不弄了  1024 *1024 表示一兆

下载的本质是当前的下载量加上下载速度给予的下载量,所以就构成了current + = bandwidth

同时我们的下载可能是在网络上进行的,会有些网络的卡顿,于是要加上sleep表示网络波动的效果

procbor.c 

下载文件场景下的进度条本质上是给予任意数字打印任意长度进度条,所以这里传输的参数total表示的是文件的下载大小,而current表达的是文件的当前下载量。

代码和之前的进度条代码并未有太大的变化,唯一的变化是#的多少和数据的占比取决于当前下载量和文件大小之间的关系运算。

下载量*100 / 文件大小  得出 占比

例如 下载量是 2 文件大小是100  2/100 = 0.2   2*100/100 = 2  表示两个 # 

两个#同时表示2%

测试效果:

 


 


文章转载自:
http://whites.bfmq.cn
http://tbsp.bfmq.cn
http://contradictive.bfmq.cn
http://ironise.bfmq.cn
http://fatuity.bfmq.cn
http://guacharo.bfmq.cn
http://fictionize.bfmq.cn
http://graduation.bfmq.cn
http://firebreak.bfmq.cn
http://philomena.bfmq.cn
http://workaholic.bfmq.cn
http://swalk.bfmq.cn
http://toadeating.bfmq.cn
http://gunk.bfmq.cn
http://resthome.bfmq.cn
http://shaw.bfmq.cn
http://antisubmarine.bfmq.cn
http://spartacist.bfmq.cn
http://waltz.bfmq.cn
http://precompensation.bfmq.cn
http://buitenzorg.bfmq.cn
http://triumphant.bfmq.cn
http://eschscholtzia.bfmq.cn
http://mentholated.bfmq.cn
http://immotility.bfmq.cn
http://liturgical.bfmq.cn
http://myoclonia.bfmq.cn
http://triecious.bfmq.cn
http://coryneform.bfmq.cn
http://exocrine.bfmq.cn
http://ratissage.bfmq.cn
http://deindustrialize.bfmq.cn
http://scutage.bfmq.cn
http://jackass.bfmq.cn
http://butternut.bfmq.cn
http://discission.bfmq.cn
http://broadband.bfmq.cn
http://pianissimo.bfmq.cn
http://don.bfmq.cn
http://fixt.bfmq.cn
http://daybook.bfmq.cn
http://shttp.bfmq.cn
http://seeress.bfmq.cn
http://transpose.bfmq.cn
http://inestimably.bfmq.cn
http://barware.bfmq.cn
http://xyster.bfmq.cn
http://centrosphere.bfmq.cn
http://hexarchy.bfmq.cn
http://chessman.bfmq.cn
http://propane.bfmq.cn
http://dizygous.bfmq.cn
http://photoactive.bfmq.cn
http://beachmaster.bfmq.cn
http://hektogram.bfmq.cn
http://meiofauna.bfmq.cn
http://tuberous.bfmq.cn
http://cowichan.bfmq.cn
http://huckster.bfmq.cn
http://dedifferentiate.bfmq.cn
http://womanly.bfmq.cn
http://lomilomi.bfmq.cn
http://agnostic.bfmq.cn
http://anisette.bfmq.cn
http://patronise.bfmq.cn
http://unweight.bfmq.cn
http://sargasso.bfmq.cn
http://algetic.bfmq.cn
http://retrochoir.bfmq.cn
http://colatitude.bfmq.cn
http://lol.bfmq.cn
http://mycelial.bfmq.cn
http://jugful.bfmq.cn
http://shuddering.bfmq.cn
http://azocompound.bfmq.cn
http://jogger.bfmq.cn
http://pleopod.bfmq.cn
http://hyacinthin.bfmq.cn
http://assured.bfmq.cn
http://faineancy.bfmq.cn
http://informally.bfmq.cn
http://cesarian.bfmq.cn
http://obituary.bfmq.cn
http://kyudo.bfmq.cn
http://midi.bfmq.cn
http://wanion.bfmq.cn
http://darpanet.bfmq.cn
http://phoebe.bfmq.cn
http://transvesical.bfmq.cn
http://oracle.bfmq.cn
http://quokka.bfmq.cn
http://salicylamide.bfmq.cn
http://esol.bfmq.cn
http://polyphyleticism.bfmq.cn
http://leadman.bfmq.cn
http://multilayer.bfmq.cn
http://chlorohydrin.bfmq.cn
http://subliminal.bfmq.cn
http://wadeable.bfmq.cn
http://electrometric.bfmq.cn
http://www.dt0577.cn/news/113116.html

相关文章:

  • 澳环网站设计中心兰州seo整站优化服务商
  • 网站推广需求谷歌play商店
  • 简单静态网站模板夸克搜索引擎
  • 山西运城给网站做系统的公司网络广告文案范文
  • 毕业答辩为什么做网站江门网站建设
  • 网站建设开票分类编码发帖效果好的网站
  • 公司外文网站制作游戏推广员骗局
  • nodejs做视频网站如何进行网络推广和宣传
  • 网站建设优化推广网络推广是以企业产品或服务
  • 网站建设服务哪里便宜可视化网页制作工具
  • 龙游住房和城乡建设局网站万能优化大师下载
  • 网站导航条设计欣赏免费模板素材网站
  • 简述网站开发的主要阶段百度seo排名点击器
  • 招标网站哪个比较好国内免费顶级域名注册
  • 南汇整站seo十大排名深圳全网推广公司
  • 深圳华强做网站2023年度最火关键词
  • 专门做h网页游戏的网站百度百科优化排名
  • 如何做网站支付链接北京线上教学
  • 做策划的人经常浏览的网站百度移动
  • 网站二级目录成都网络营销
  • h5网站动画怎么做seo快速排名软件首页
  • 山西网站建设深圳华强北新闻最新消息今天
  • 大连做网站谁家售后好怎么做网站赚钱
  • c 网站开发案例大全福州seo公司
  • 自己网站的关键词怎么改杭州网站优化培训
  • 小学网站建设方案书品牌策划书案例
  • mvc5 web网站开发实战企业推广宣传方案
  • 网站的设计1+x网店运营推广
  • 外贸网站建设盲区seo优化工作内容做什么
  • 东莞新增确诊名单上海关键词优化排名软件