赞
踩
目录
1.缓冲区
有\n时,先打印Hello World,再睡眠1秒
当去掉\n,睡眠1秒,什么都没显示
打印其实已经执行完毕,只是信息没有被显示出来,程序退出时打印才显示
C语言提供了输出缓冲区(一段内存空间,操作系统从缓冲区读取数据),缓冲区会根据特定的刷新策略进行刷新:对于显示器设备,一般的刷新策略:行刷新(碰到\n,把\n之前字符全部显示)
fflush刷新缓冲区
再次执行,先显示Hello World,再睡眠1秒
1.2 \r 和 \n的区别
回车和换行并不是一个概念
换行\n:光标原先在哪个位置,对应向下新起一行
回车\r:回到当前行最开始
c语言默认把\n当成回车换行
使用\r,并没有刷新数据,最后也没有显示出来是因为每一次打印完都要回到最开始,最后一次光标也会在缓冲区的最开始,最终什么都没显示(原因在于:没有\n刷新,数据不会显示出来,最后return也没有显示是因为每一次打印完\r都要回到最开始,最后一次光标也会在缓冲区的最开始)
加上fflush,形成了一个倒计时
利用/r写进度条
- 1 #include <stdio.h>
- 2 #include <unistd.h>
- 3 #include <string.h>
- 4
- 5 #define NUM 102//\0
- 6
- 7 int main()
- 8 {
- 9 char bar[NUM];
- 10 memset(bar,0,sizeof(bar));
- 11 const char* lable="|/—\\";
- 12 int j=0;
- 13 while(j<=100)
- 14 {
- 15 printf("[%-101s][%d%%] %c \r",bar,j,lable[j%4]);
- 16 bar[j++]='#';
- 17 fflush (stdout);
- 18 usleep(30000);
- 19 }
- 20 printf("\n");
- 21 return 0;
- 22 }
2.yum软件包管理器
yum可以解决依赖关系(前置,例如.dll就是)
yum源:配置文件 ls /etc/yum.repos.d
打开CentOS,内部是大量的链接(网站提供好软件包)
不同扩展源有不同的软件包
显示能下载的软件:yum list
指定名称搜索指令:yum list | grep 软件包名称
安装指令:yum install -y 软件包名称
卸载指令:sudo yum remove 软件包名称
3.git
Linux中如何把git仓库下载项目到本地
创建好一个放置代码的目录:git clone [你的git仓库链接]
其中.git就是git仓库,tree .git中文件需要100%同步到gitee账户中(内容同步过去并不是源代码同步)
将Linux写好的代码放到刚才下载好的本地目录中:git add .(.也可以换成新文件,使当前目录下没有添加到.git仓库中的全部添加到.git仓库中)
提交改动到本地仓库:git commit -m “提交日志”(-m必须带,后面必须写提交日志:主要做了哪些改动等)
add和commit区别是:add是放在预备提交文件区域中,commit是提交到本地仓库
仓库同步提交:git push
出现以下情况,需要配置user.name和user.email
直接复制代码输入邮箱姓名即可
成功上传到gitee上
git log可以查看提交记录
rejected
多人协作时,当git push失败时,使用git pull同步仓库新代码(本地.git仓库和gitee上仓库不一致造成),报错不用管,q退出即可
.gitignore
git add .可能会让临时文件,废弃文件等传到项目中,.gitignore 可以让这些废弃文件禁止添加进去
注意:需要在仓库创建时选择gitignore类型 ,例如*.d 表示所有.d结尾的文件不会被上传
删除文件
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。