Linux第一个小程序-进度条 _git

文章目录

\r&&\n是什么

\r:回车的意思 回车:将光标移动到行开头。

\n:回车+换行 (将光标移动到行开头+光标处换到一行)

缓冲区

缓冲区:缓冲区先简单理解为一块内存,为显示器准备的。

显示器的显示,通过缓冲区,要显示的内容先要放进缓存区。

顺序:显示的内容-》 缓冲区-》 显示器。

缓冲区的内容冲刷到显示器的规则:缓冲器满了 程序结束 缓冲区遇见\n

缓冲区的内容会冲刷到显示器上。

c语言中还有函数可以强制冲刷缓冲区:ufllush(stdout);

参数是标准输出,c语言程序会默认打开三种文件流:1.stdin(标准输入)

2.stdout(标准输出)3.stderr(标准错误)。

stdin 键盘写入缓冲区

stdout 显示器的输出

显示区的输出 :有立即显示的,有滞后显示的。

c 复制代码
 

 
//什么现象???
//这里的打印 有\n 显示信息到printf()函数会立即在屏幕上打印
#include <stdio.h>
int main()
 {
    printf("hello Makefile!\n"); 
    sleep(3);
    return 0;
 }
c 复制代码
// 什么现象??
// printf()函数中\n 这里的显示信息会在程序结束的时候显示
 #include <stdio.h>
 
int main()
 {
    printf("hello Makefile!");
    sleep(3);
    return 0;
 }

进度条代码

c 复制代码
#include <unistd.h>
 #include <string.h>
 int main()
 {
 int i = 0;
 char bar[102];
 memset(bar, 0 ,sizeof(bar));
 const char *lable="|/-\\";
 while(i <= 100 ){
 printf("[%-100s][%d%%][%c]\r", bar, i, lable[i%4]);
 fflush(stdout);
 bar[i++] = '#';
 usleep(10000);
 }
 printf("\n");
 return 0;
 }
相关推荐
zzqssliu2 小时前
煤炉自动代拍系统的队列设计与超时控制机制
git·github
一支绝命钩3 小时前
FPGA工程Git常用操作手册
git
Yana.nice3 小时前
Linux 只保留 30 天内日志(find命令删除日志文件)
linux·运维·chrome
DFT计算杂谈7 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
不搞学术柒柒7 小时前
Git新功能完整开发提交流程
git
Zhang~Ling8 小时前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
DeeplyMind8 小时前
Linux 深入 per-VMA lock:Linux 缺页路径如何摆脱 mmap_lock
linux·per-vma lock
爱写代码的森8 小时前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
XMAIPC_Robot9 小时前
软硬协同实时控制|RK3588业务调度+FPGA硬件时序,ethercat实现半导体设备微秒级响应(125us)
linux·arm开发·人工智能·fpga开发
重生的黑客9 小时前
Linux 进程优先级、切换与调度:从孤儿进程到 O(1) 调度模型
linux·运维·服务器·进程优先级·nice