linux第一个系统程序-进度条

回车换行

\r叫做回车。\n叫做换行,c/c++中\n又是回车换行。回车就是回到这行开头,换行就是下一行,但是位置没有变。

缓冲区

我们执行这个代码的时候,我们会先看见休眠,再输出,为什么?程序不是先输出,再休眠吗。因为缓冲区,数据先被存在缓冲区,等程序结束,自动刷新出来。

回车换行可以解决刷新。还有fllush(stdout)

倒计时

进度条版本1

简单的输出一个进度条的形式。

对于字符数组,%s,数组名就能输出整个数组。数组名是首元素的地址。

不要数组越界。

sizeof(数组名)算的是整个数组字节大小。

进度条版本2

为什么回调函数耦合度低,因为我们使用回调函数,避免这个process函数进度条与download绑定了。如果我们想使用其他函数。只需要在main里面修改一下就可以了。如果不使用回调函数。我们需要修改download里面的process函数。耦合度高。

memset

在使用memset函数的时候。最后size。需要的是字节数,不是元素个数。

对于一个数组sizeof(arr)算的是字节数。sizeof(arr)/sizeof(arr0)才是元素个数。

man找指令的头文件

在unbantu下比如查找一个c/c++里面的库函数的头文件。应该是man 3posix 函数。

指针数组和普通数组的区别

在c语言中char指针数组是存放字符串的,char普通数组不能存放字符串。只能存放单个字符。

相关推荐
☆凡尘清心☆7 分钟前
Linux运维故障排查速查命令清单
linux·运维·服务器
小泊客13 分钟前
友善R5C刷OpenWrt后RTL8822CE无线网卡显示“禁用”或“未激活”的完整解决方案
linux·github·运维开发
mounter62516 分钟前
跨内核实时更新:如何实现 hugetlbfs 巨页的无缝保留与恢复?
linux·linux kernel·kernel·kexec·liveupdate·kho
qeen8725 分钟前
【Linux】make/Makefile 自动化工具的介绍
linux·运维·服务器·自动化
funnycoffee12331 分钟前
Cisco ip access-list序号重排方法
linux·网络·tcp/ip
艾莉丝努力练剑1 小时前
【Linux:动静态库】Linux 动静态库与可执行文件
linux·运维·服务器·学习·面试·文件系统·动静态库
殷忆枫1 小时前
Linux 4G模块驱动适配实战:从手动绑定到自动识别
linux·运维·服务器
独隅1 小时前
CLion 在 Linux 上的完整安装与配置使用指南
linux·运维·服务器·c语言·c++·ide
☆凡尘清心☆1 小时前
CentOS Stream 9 编译安装 Redis 7.2.7 完整版详细步骤
linux·redis·centos
wuminyu1 小时前
JUC组件逐层剥离与深度剖析
java·linux·c语言·jvm·c++·算法