语法
在依赖方法前面加上@就不会显示这一行的命令
注意
1.make 会在当前目录下找名为“makefile” 或者 “Makefile” 的文件
2.为了生成第一依赖文件,如果依赖文件列表有文件不存在,则会到下面的依赖关系中查找
3..PHONY修饰的依赖文件总是被执行的
4.一直make是不行的,可以touch依赖文件列表;如果是touch依赖文件,会报:code.exe is up to date,我觉得有点不合理,其实应该表达的意思是code.c是最新的.
5.构建文件就是从上往下构建
进度条
\r&&\n
\r执行回车;
\n执行回车加换行;
\r\n时候,\r执行回车,\n执行换行,不会换两行
缓冲区
下面其实就是c的语法了
Linux里写的,sz传桌面麻烦,直接看吧,都学到这了,肯定可以看懂
这样会延迟3秒输出到屏幕文件上,但是printf是比sleep先执行的;
这时候里面的内容在缓冲区里,消息最终会通过stdout写到显示器上;为了方便用户输入和输出,一个程序在启动的时候,编译器和系统会默认打开stdin,stdout,stderr,可以理解为在编译的时候加了一部分代码
冲刷缓冲区的条件
1.遇到return 0
2.遇到\n
3,缓冲区满了
这样做是为了提升效率,从内存到内存比从内存到硬件来快;向外设刷新的次数越少,单次刷新的越多,效率越高
比如Linux像切换用户时,那个密码是不显示的,就是在内存里比较,不显示到屏幕上;我觉得是不在缓冲区里的,因为缓冲区是要输出到屏幕上的内容
补充:密码输入通常是通过终端设备进行的,而终端设备处理输入时会有不同的模式。通常,在密码输入时,终端设备会将输入设置为不回显模式,它们会直接发送给正在等待输入的程序。另外,密码输入通常是在标准输入(stdin)中进行的,而不是在输出缓冲区中。因此,即使密码不被显示在屏幕上,它们仍然会被输入到内存中,并且可以由程序读取,以进行验证或其他处理。
1版代码
不知道为什么会报这个警告
仍然不知道,但是使用c++11就可以