Linux用make指令编译进度条程序

发布时间 - 2026-01-11 00:33:16    点击率:

本文实例为大家分享了Linux下写一个简单进度条的具体代码,供大家参考,具体内容如下

首先建立一个新的文件,touch progress_bar.c 执行该vim progress_bar.c命令,写进度条的程序。写进一个进度条程序:

#include<stdio.h>
#include<unistd.h>
#include<string.h>

void progress()
{
 int i = 0;
 char bar[102];
 memset(bar,0,102*sizeof(char));
 const char* lable="|/-\\";
 while(i <= 100)
 {
  bar[i] = '#'; 
  printf("[%-101s] [%d%%] [%c]",bar,i,lable[i%4]);
  fflush(stdout);
  usleep(100000);
  i++;
 }
 printf("\n");
}

int main()
{
 progress();
 return 0;
}

如图:

该代码中需要注意的小细节:

1. const char* lable=”|/-\\”; 直接输入一个\会被系统认为是转义,所以要输入\\
2. printf(“[%-101s] [%d%%] [%c]”,bar,i,lable[i%4]);这里的%%同上,防止转义。rate%4防止溢出
3. fflush(stdout); 参数为标准输出流
4. 因为sleep默认单位为秒,不便于测试,usleep默认单位为微秒

最后,进行调试,建立一个mymakefile文件,touch mymakefile对该文件进行编辑vim mymakefile。

myprogress_bar:progress_bar.c
  g++ -o myprogress_bar progress_bar.c
:PHONY clean
  clean:
  rm -f myprogress_bar

如图所示: 

然后执行make命令,对progress_bar.c文件进行编译,make -f mymakefile,即生成myprogress_bar文件,用./myprogress_bar对他进行执行。若想重新进行编译,则需要make -f mymakefile clean指令,先对文件progress_bar进行清除,再用make进行编译。

如图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Linux  # make  # 进度条  # Linux下模拟实现进度条实例详解  # Linux下简易进度条的实现代码  # linux shell进度条实现方法  # Linux简易彩色进度条的实例代码  # 如图  # 建立一个  # 对他  # 再用  # 大家分享  # 该文件  # 需要注意  # 具体内容  # 大家多多  # 则需  # 写进  # 如图所示  # 直接输入  # stdio  # lt  # string  # gt  # unistd  # char 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布  Python文件操作最佳实践_稳定性说明【指导】  C语言设计一个闪闪的圣诞树  浅析上传头像示例及其注意事项  Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  Android实现代码画虚线边框背景效果  JS中页面与页面之间超链接跳转中文乱码问题的解决办法  如何快速启动建站代理加盟业务?  JavaScript如何实现继承_有哪些常用方法  软银砸40亿美元收购DigitalBridge 强化AI资料中心布局  javascript如何操作浏览器历史记录_怎样实现无刷新导航  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  Laravel如何实现API资源集合?(Resource Collection教程)  如何快速建站并高效导出源代码?  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析  EditPlus中的正则表达式实战(5)  如何在云主机上快速搭建多站点网站?  Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析  Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件  Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)  如何确保西部建站助手FTP传输的安全性?  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  公司网站制作价格怎么算,公司办个官网需要多少钱?  如何用JavaScript实现文本编辑器_光标和选区怎么处理  高端云建站费用究竟需要多少预算?  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  如何用低价快速搭建高质量网站?  js代码实现下拉菜单【推荐】  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】  Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用  Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】  怎么用AI帮你为初创公司进行市场定位分析?  Python制作简易注册登录系统  python中快速进行多个字符替换的方法小结  如何在IIS中新建站点并配置端口与物理路径?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  如何快速配置高效服务器建站软件?  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  Laravel怎么清理缓存_Laravel optimize clear命令详解  如何在Windows服务器上快速搭建网站?  Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置  北京企业网站设计制作公司,北京铁路集团官方网站?  iOS中将个别页面强制横屏其他页面竖屏  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】  Linux系统命令中tree命令详解  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口