Linux自动化构建工具(一)

在这里插入图片描述
在这里插入图片描述


🎁个人主页:工藤新一¹

🔍系列专栏:C++面向对象(类和对象篇)

🌟心中的天空之城,终会照亮我前方的路

🎉欢迎大家点赞👍评论📝收藏⭐文章


文章目录

  • Linux自动化构建工具
    • 一、make进度条
      • 1.1make/Makefile
      • 1.2 .PHONY
      • 1.3Modify 的新旧时间问题
    • 二、Makefile 的推导规则
      • 2.1程序编译的过程
      • 2.2 Makefile的多文件操作
    • 三、进度条(命令行版本)
      • 3.1对于 printf 的基本认识
      • 3.2理解显示功能
      • 3.3写什么样的进度条?
        • 3.3.1原理版(version1)
        • 3.3.2(version2)
        • 3.3.3补充内容 - 回调函数

Linux自动化构建工具

一、make进度条

1.1make/Makefile

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


1.2 .PHONY

在这里插入图片描述


1.3Modify 的新旧时间问题

在这里插入图片描述


在这里插入图片描述


二、Makefile 的推导规则

2.1程序编译的过程

在这里插入图片描述


在这里插入图片描述


  • $BIN 可视作对 BIN 进行解引用操作

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


2.2 Makefile的多文件操作

  • 方案一(version1):

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


  • 方案二(version2):

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


三、进度条(命令行版本)

  • 回车(\r)换行(\n)[回车换行是两个不同的符号]

  • 缓冲区:笼统上可以理解成一段内存块

3.1对于 printf 的基本认识

  • fflush(stdout)printf 中存放在缓冲区的 %d 刷新回显到屏幕上

在这里插入图片描述


在这里插入图片描述


3.2理解显示功能

  • Linux编程语言 中,“显示” 是一个基础但重要的概念,它指的是将信息呈现给用户的过程

在这里插入图片描述


在这里插入图片描述


3.3写什么样的进度条?

[#### ] [53%] [/]

3.3.1原理版(version1)

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


3.3.2(version2)
  • 上述,我们原理版本的进度条可以运行,但 无法使用,如下载时,进度条(每秒固定的变化)和下载程度(根据网速来回拉扯)不匹配

  • 一个进度条一定需要结合具体的场景,进行动态更新(如,按照某时某刻下载程度,实时的返回给进度条)

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


3.3.3补充内容 - 回调函数

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述
🌟 各位看官好我是工藤新一¹呀~

🌈 愿各位心中所想,终有所致!


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/88550.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/88550.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

目标检测流程图绘制

目标检测流程图绘制作为一个长期科研的苦命人,我一般采用Processon。 一、目标检测流程图绘制的 “量身定制” 体验 Processon 的绘图元素库对目标检测领域极度友好,从基础模块到复杂结构都能精准匹配:   核心组件一键调用:在右…

GitHub 趋势日报 (2025年07月09日)

📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图970genai-toolbox780WebAgent650rustfs451prompt-eng-interactive-tutorial246ai-a…

多云环境下的成本管理挑战与对策 ——资源碎片化治理与华为CloudMatrix破局之道

一、危机:多云成本失控已成企业“隐形杀手”成本超支概率激增据Gartner 2024报告,采用多云策略的企业成本超支概率比单云企业高47%,主因资源碎片化导致的闲置浪费和管控失效。触目惊心的数据:73%企业云成本占营收超20%&#xff0c…

Linux的基础I/O

目录 1、理解“文件” 1.1 狭义理解 1.2 广义理解 1.3 文件操作的归类认知 1.4 系统角度 2、回顾C文件接口 2.1 文件的打开与关闭 2.2 文件的读写函数 2.3 stdin & stdout & stderr 3、系统文件I/O 3.1 一种传标志位的方式 3.2 文件的系统调用接口 3.2.1 o…

广告匹配策略的智能化之路:人工智能大模型的方法和步骤

摘要 广告匹配策略是指根据用户的需求和偏好,向用户推荐最合适的广告的方法。广告匹配策略的优化是数字化营销的核心问题之一,也是提升广告效果和收益的关键因素。本文介绍了如何利用人工智能大模型,从数据分析、广告推荐、策略优化、效果评…

飞算JavaAI:重塑Java开发的“人机协同“新模式

引言 在Java开发领域,“效率"与"质量"的平衡始终是开发者面临的核心挑战——重复编码消耗精力、复杂业务易出漏洞、老系统重构举步维艰。飞算JavaAI的出现,并非简单地用AI替代人工,而是构建了一套"AI处理机械劳动&#…

运行ssh -T git@github.com报错

运行ssh -T gitgithub.com报错 no such identity: /root/.ssh/id_rsa: No such file or directory gitssh.github.com: Permission denied (publickey). 如果我用的是ed25519而非rsa,有id_ed25519 则需要打开~/.ssh/config检查一下是否写错了 vim ~/.ssh/config 然后…

20250710-2-Kubernetes 集群部署、配置和验证-网络组件存在的意义?_笔记

一、网络组件的作用1. 部署网络组件的目的核心功能:执行kubectl apply -f calico.yaml命令的主要目的是为Kubernetes集群部署网络组件必要性:解决Pod间的跨节点通信问题建立集群范围的网络平面,使所有Pod处于同一网络…

【牛客刷题】dd爱科学1.0

文章目录 一、题目介绍1.1 题目描述1.2 输入描述:1.3 输出描述:1.4 示例1二、解题思路2.1 核心策略2.2 算法流程2.3 正确性证明三、算法实现四、关键步骤解析五、复杂度分析六、正确性验证七、算法对比7.1 暴力搜索法7.2 动态规划7.3 三种解法对比分析一、题目介绍 1.1 题目描…

跑步-Java刷题 蓝桥云课

目录 题目链接 题目 解题思路 代码 题目链接 竞赛中心 - 蓝桥云课 题目 解题思路 用数组记录每个月有多少天,再使用一个int型变量记录是星期几,遍历即可 代码 import java.util.Scanner; // 1:无需package // 2: 类名必须Main, 不可修改public class Main {public stat…

Qt常用控件之QWidget(二)

Qt常用控件(二)1.window frame2.windowTitle3.windowIcon🌟🌟hello,各位读者大大们你们好呀🌟🌟 🚀🚀系列专栏:【Qt的学习】 📝📝本篇…

飞算Java AI:专为 Java 开发者打造的智能开发引擎

目录 一,核心功能 1,智能编码(AI Coding) 2,AI 驱动测试(AI Testing) 3,智能运维(AIOps) 4,工程化支持 二、注册与上手:3 分钟快…

基于开源AI大模型AI智能名片S2B2C商城小程序源码的私域流量新生态构建

摘要:私域流量并非新生概念,企业持续构建和经营“企业 - 客户”关系是其持续存在的关键,且会随时代发展自我完善迭代。本文探讨了开源AI大模型AI智能名片S2B2C商城小程序源码在私域流量领域的应用价值。通过分析私域流量发展现状与挑战&#…

用 ELK+Filebeat 提高50%问题排查效率,这套方案实测有效!

摘要 在中大型系统中,日志的分布常常让问题排查变得异常痛苦:每次出错都要登录一堆服务器、翻一堆文本,还不一定能找到关键线索。为了解决这个问题,ELK(Elasticsearch、Logstash、Kibana)日志聚合平台应运而…

数据治理到底是什么?搞清这四件事,你就彻底明白了!

目录 第一件事:数据治理不是做“数据”,是做“管” 第二件事:治理的核心,是“数、责、权”的三角绑定 一是“数”:你到底有哪些数据? 二是“责”:每张表、每个字段是谁负责? 三…

Spring的事务控制——学习历程

思考:1. 事务是干什么的?2. 事务的特性?3. 事务控制的传播方式(传播行为)4. 事务的隔离级别5. 事务是如何实现的?6. 事务的回滚方式7. 事务失效场景回答:1. 事务和锁,还有版本控制 …

鸿蒙 Secure Boot 全流程解析:从 BootROM 到内核签名验证的实战指南

摘要 随着智能设备应用的深入,操作系统安全成为设备可信运行的基础。在物联网和多终端场景中,一旦系统被恶意篡改,将带来数据泄露、设备被控等严重后果。鸿蒙系统在安全启动方面设计了完整的机制,从最底层的 Boot ROM 开始逐级校验…

tailwindCSS === 使用插件自动类名排序

目录 类如何排序 自定义 实战应用 .prettierrc package .eslintrc 人们一直在讨论在 Tailwind 项目中对实用程序类进行排序的最佳方法。今天,我们很高兴地宣布,随着我们官方 prettier-plugin-tailwindcss 的发布,您终于可以不用为此担…

数据结构 —— 键值对 map

目录 map的若干操作 1、emplace() 2、find(key) 3、count(key) 4、lower_bound 和 upper_bound 5、erase() 6、empty() 7、降序的map 计蒜客T3603 叫号系统 题意: 解题思路: Code: Leetcode1309 解码字母到整数映射 题意: 解题…

C++ 性能优化指南

C 性能优化指南(针对 GCC 编译器,面向高级工程师面试) 代码优化面试常问点: 如何避免不必要的对象拷贝?为什么要用引用或 std::move?虚函数调用有什么性能开销?原理解释: 传递对象时…