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

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.lryc.cn/news/585637.html

相关文章:

  • 多表查询-2-多表查询概述
  • 蔚来测开一面:HashMap从1.7开始到1.8的过程,既然都解决不了并发安全问题,为什么还要进一步解决环形链表的问题?
  • 前端面试专栏-算法篇:23. 图结构与遍历算法
  • USB一线连多屏?Display Link技术深度解析
  • React中Redux基础和路由介绍
  • 适配多场景,工业显示器让操作更高效
  • 前端八股-promise
  • Spring的事务控制——学习历程
  • C++设计秘籍:为什么所有参数都需类型转换时,非成员函数才是王道?
  • Python-正则表达式-信息提取-滑动窗口-数据分发-文件加载及分析器-浏览器分析-学习笔记
  • (补充)RS422
  • Qt 实现新手引导
  • 分布式推客系统全栈开发指南:SpringCloud+Neo4j+Redis实战解析
  • 【世纪龙科技】几何G6新能源汽车结构原理教学软件
  • 【龙泽科技】新能源汽车维护与动力蓄电池检测仿真教学软件【吉利几何G6】
  • 重构下一代智能电池“神经中枢”:GCKontrol定义高性能BMS系统级设计标杆
  • Java :T extends Comparable<? super T> 和 T extends Comparable<T>的区别
  • 李沐动手学深度学习Pytorch-v2笔记【07自动求导代码实现】
  • 标准化模型格式ONNX介绍:打通AI模型从训练到部署的环节
  • 第十五章 STL(stack、queue、list、set、map容器使用)
  • Nginx 添加 Stream 模块(不覆盖已安装内容)
  • Java 中使用 Stream 将 List 转换为 Map 实战笔记(生产级版)
  • 【Freertos实战】零基础制作基于stm32的物联网温湿度检测(教程非常简易)持续更新中.........
  • 计算机网络第三章(5)——数据链路层《广域网》
  • 【网络编程】KCP——可靠的 UDP 传输协议——的知识汇总
  • 触控屏gt1947
  • 数据治理到底是什么?搞清这四件事,你就彻底明白了!
  • 【C++】内联函数inline以及 C++入门(4)
  • 静态路由综合配置实验报告
  • python实现DoIP基本通信(收发报文)