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

自己做的网站怎么上传到浏览器游戏推广渠道

自己做的网站怎么上传到浏览器,游戏推广渠道,浙江城乡与住房建设部网站,网站建设设计制作维护目录 一、make的默认目标文件与自动推导 二、不能连续make的原因 执行原理 touch .PHONY伪目标 make指令不回显 makefile多文件管理 简写依赖方法 三、回车与换行 四、缓冲区 一、make的默认目标文件与自动推导 假设这是一个makefile文件,make的时候默认生…

目录

一、make的默认目标文件与自动推导

二、不能连续make的原因

执行原理

touch

.PHONY伪目标

  make指令不回显

makefile多文件管理 

简写依赖方法

三、回车与换行

四、缓冲区


一、make的默认目标文件与自动推导

假设这是一个makefile文件,make的时候默认生成第一行的目标文件 ,make会自动推导makefile中的依赖关系,推导过程是一个栈式结构。

hello:hello.ogcc hello.o -o hello
hello.o:hello.sgcc -c hello.s -o hello.o
hello.s:hello.igcc -S hello.i -o hello.s
hello.i:hello.cgcc -E hello.c -o hello.i

即使我们打乱了下面六行的顺序,结果还是相同,最终编译出来的任然是hello

hello:hello.ogcc hello.o -o hello
hello.o:hello.sgcc -c hello.s -o hello.o
hello.i:hello.cgcc -E hello.c -o hello.i
hello.s:hello.igcc -S hello.i -o hello.s

而如果hello.s为目标文件,那么程序编译到hello.s就会结束了

hello.s:hello.igcc -S hello.i -o hello.shello.i:hello.cgcc -E hello.c -o hello.ihello.o:hello.sgcc -c hello.s -o hello.ohello:hello.ogcc hello.o -o hello  

二、不能连续make的原因

在进行make操作时,我们不能连续make,因为如果源文件已经被编译过了,并且源文件没有被修改,那我们就没有必要编了,这样子可以提高效率。

执行原理

因为一定是先有源文件再有可执行文件的,所以一般而言,源文件的最早修改时间是要比可执行文件早的

如果源文件被修改过,历史上还有可执行文件,那么源文件的最近修改时间一定比可执行文件晚

我们可以使用stat 文件名  来查询文件的时间问题

access 为最近访问时间,但是由于我们不管是进行文件的 内容或者属性修改都会进行访问,因此access会在多次被访问之后才会更新一次

modify则是文件内容被修改的最近一次时间

change是文件属性被修改的最近一次时间,包括文件名,文件大小,文件创建日期,文件的权限等等

值得注意的是因为修改文件内容时,绝大多数时候文件的大小都会改变,因此modify改变大部分情况change也都会改变,而修改文件属性时则不会改变modify

touch

我们如果使用touch 文件名  ,那么 access,modifiy,change都会改变到当前时刻,我们也可以使用选项单个修改

-m 修改modify,但是同时change也会改变

-a改变access

而make是否执行依赖关系,比较的是modify

.PHONY伪目标

那如果我想让对应的依赖关系总是被执行呢?

我们可以在依赖关系前面添加.PHONY:,即为伪目标。添加.PHONY:后依赖关系总是会被执行。我们一般会在clean 的前面添加

mytest.exe : mycode.c                //依赖关系gcc -o mytest.exe mycode.c      //这行的开头要求是一个tab     这行称为依赖方法  
.PHONY: clean
clean: rm -f mytest.exe

  make指令不回显

执行make 和make clean 时依赖方法会进行回显

我们可以在依赖方法前带上@

mytest.exe : mycode.c                @gcc -o mytest.exe mycode.c  

makefile多文件管理 

makefile 还支持多文件管理,例如

processbar: processbar.c main.c  //如果.h文件与这两个文件在同一目录下,那么gcc是能自己找到.文件的

(假设这个项目由processbar.h ,processbar.c,main.c组成)

简写依赖方法

特殊符号$@可以表示依赖关系冒号左边的文件,$^可以表示冒号右边的文件

mytest.exe : mycode.c                gcc -o $@ $^mytest.exe : mycode.c  main.c             gcc -o $@ $^

三、回车与换行

回车指的是将光标移动到改行的开头

换行指的是将光标移动到下一行

四、缓冲区

缓冲区就是c语言维护的一段内存

我们编译并运行代码1

#include <stdio.h>
int main()
{
printf("hello Makefile!\n");
sleep(3);
return 0;
}

会观察到程序会先打印,再停顿三秒

而当我们编译并运行代码2

#include <stdio.h>
int main()
{
printf("hello Makefile!");
sleep(3);
return 0;
}

我们会看到,程序会先停顿三秒,再输出。

这难道是代码执行顺序改变了吗?其实知识因为去掉\n后,printf输出的内容被存到缓冲区内

当我们执行代码3时

#include <stdio.h>
int main()
{
printf("hello Makefile!");
fflush(stdout);
sleep(3);
return 0;
}

效果又会同代码1一样了,这时候因为我们使用fflush刷新了stdout,stdout是标准输出流,即显示器

http://www.tj-hxxt.cn/news/64394.html

相关文章:

  • 常用的电子商务网站开发技术深圳市社会组织总会
  • 在线做网站 自动生成手机版搜索引擎优化期末考试答案
  • 网页游戏排行榜开服时间保定百度seo公司
  • 福州外贸网站制作百度手机卫士
  • 做热饮店网站百度关键词优化软件网站
  • 珠宝行业做网站的好处自己做网站如何赚钱
  • 网站建设寻找可以途径网络推广营销方案100例
  • 做的比较早的海淘网站青岛做网站的公司哪家好
  • 在线网页制作源码搜索引擎内部优化
  • 怎么自己做网站盗qq网络视频营销
  • 南川网站制作最佳的资源磁力搜索引擎
  • 靖江建设局网站请输入搜索关键词
  • 外国的html 素材网站项目推广方式有哪些
  • 设计师图片素材南京seo推广公司
  • 做网站属于广告费吗搜索量排名
  • 用dw做网站怎么添加音乐网站优化排名
  • 360客户如何做网站推广企业网络推广计划书
  • 大学做网站是什么专业营销软文是什么意思
  • 背景墙素材高清图片免费谷歌自然排名优化
  • 做职业规划的网站seo是什么字
  • 个人网站开发如何赚钱吗荥阳seo
  • wordpress多城市子站最新seo自动优化软件
  • ic外贸网站建设武汉网络推广有哪些公司
  • 做网站优化步骤百度推广开户公司
  • 免费看java开发的网站班级优化大师app下载
  • 建设银行网站最近打不开吗搜易网优化的效果如何
  • 什么网站可以做棋谱企业网站制作流程
  • asp+sql server典型网站建设案例西安关键词推广
  • 设计师网名女网络优化工程师是做什么的
  • 哪些网站可以做问卷调查东莞网站seo技术