c++纯控制台进度条

发布时间:2026/10/23 3:58:12
c++纯控制台进度条 理论按理来说C控制台本身是不能做进度条的用多个endl无法适配所有设备但有了system语法后就可以逐帧来做进度条不需要下载其他库文件再搭配C自有的Sleep就可以实现进度条。众所周知system是shell命令shell命令库里有cls这个清屏的功能所以说输出一帧后处理一下用system(“cls”)后输出下一帧就差不多是标准的进度条了。但是还是会闪这下就要有请windows.h库了这个库的Sleep语句就可以完美解决闪的问题数值大概在500~100左右就够了太大等太久太小又会闪。普通的进度条每次加一就够了而像Windows那样像窗户一样的就要用到自定义函数了也可以直接在主程序里搞要模板代码的私聊我我发你。上代码普通进度条#includebits/stdc.h//万能头文件#includewindows.h//Sleep语句头文件usingnamespacestd;intmain(){intlon100;//数值可自定义进度条长度for(inti1;ilon;i){cout;for(intj1;jlon;j){cout-;}coutendl|;for(intj1;ji;j){cout*;//进度条部分可自定义}for(intj1;jlon-i;j){cout ;//空余部分}cout|endl;cout;for(intj1;jlon;j){cout-;}coutendl;Sleep(100);//防止剧烈闪屏system(cls);//清屏}return0;}lon是进度条长度如有需要可以改成long 或 long long。windows同款#includebits/stdc.h//万能头文件#includewindows.h//Sleep语句头文件usingnamespacestd;constintLON100;//数值可自定义进度条长度boola[LON]{};intwlong20;//窗户长度不能大于LONintChange(){if(a[LON-1]1){a[LON-1]0;a[0]1;}for(intiLON-1;i1;i--){a[i]a[i-1];a[i-1]0;}return0;}intmain(){for(inti0;iwlong;i){a[i]1;}while(1){cout;for(intj1;jLON;j){cout-;}coutendl|;for(intj0;jLON;j){if(a[j]){cout*;continue;}cout ;}cout|endl;cout;for(intj1;jLON;j){cout-;}coutendl;Change();//准备下一次进度条的输出Sleep(20);//防止剧烈闪屏system(cls);//清屏}return0;}这个windows同款的有两个变量LON和wlongLON是进度条的总长wlong是进度条长度。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询