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

如何利用源码做网站网站建设简单个人主页

如何利用源码做网站,网站建设简单个人主页,wordpress 分页文章数,网站建设捌金手指花总二六文章目录1. 背景2.实例3.原理4.项目清理5. 文件属性中的三个时间6. Linux下第一个小程序——进度条6.1 前置知识1#xff1a;缓冲区6.2前置知识2#xff1a;回车换行6.3进度条的实现7 Linux下git的”三板斧“1. 背景 一个工程中的源文件不计其数#xff0c;其按类型、功能、… 文章目录1. 背景2.实例3.原理4.项目清理5. 文件属性中的三个时间6. Linux下第一个小程序——进度条6.1 前置知识1缓冲区6.2前置知识2回车换行6.3进度条的实现7 Linux下git的”三板斧“1. 背景 一个工程中的源文件不计其数其按类型、功能、模块分别放在若干个目录中makefile定义了一系列的规则来指定哪些文件需要先编译哪些文件需要后编译哪些文件需要重新编译甚至于进行更复杂的功能操作makefile带来的好处就是——“自动化编译”一旦写好只需要一个make命令整个工程完全自动编译极大的提高了软件开发的效率make是一个命令工具是一个解释makefile中指令的命令工具一般来说大多数的IDE都有这个命令比如Delphi的makeVisual C的nmakeLinux下GNU的make。可见makefile都成为了一种在工程方面的编译方法make是一条命令makefile是一个文件两个搭配使用完成项目自动化构建 2.实例 下面我们使用一个例子来示范怎么使用make和makefile 这里分别是我们的C语言源文件和makefile的内容然后我们使用make指令 可以看到使用make指令之后就执行了makefile的第一行也就第一个依赖方法。当执行make clean时执行了clean的内容。这样就完成了我们所需要的功能 下面我们来详细分析一下上面范例中的各个代码的作用 3.原理 首先明确一点make/makefile的存在是为了构建项目构建项目需要依赖关系和依赖方法。举个例子学生时代的我们都会问父母要钱要钱的时候我们会说“老爸我没钱了给我打钱”这里前面半句话就是表明了依赖关系我是你儿子你是我爸爸后面半句话就是表明了依赖方法给我打钱。 所以在makefile中需要写的就是依赖关系和依赖方法然后使用make去通过依赖关系执行依赖方法从而产生我们需要的文件或者指令。 make是如何工作的 make会在当前目录下找名字叫“Makefile”或“makefile”的文件。如果找到它会找文件中的第一个目标文件target在上面的例子中他会找到“test_make”这个文件并把这个文件作为最终的目标文件。如果test_make文件不存在或是test_make所依赖的后面的test_make.c文件的文件修改时间要比hello这个文件新可以用 touch 测试那么他就会执行后面所定义的命令来生成hello这个文件。如果test_make所依赖的test_make.c文件不存在那么make会在当前文件中找目标为test_make.c文件的依赖性如果找到则再根据那一个规则生成test_make.c文件。这有点像一个堆栈的过程当然你的.c文件和.h文件是存在的啦于是make会生成 test_make.c 文件然后再用 test_make.c 文件声明make的终极任务也就是执行文件test_make了。这就是整个make的依赖性make会一层又一层地去找文件的依赖关系直到最终编译出第一个目标文件。在找寻的过程中如果出现错误比如最后被依赖的文件找不到那么make就会直接退出并报错而对于所定义的命令的错误或是编译不成功make根本不理。make只管文件的依赖性即如果在我找了依赖关系之后冒号后面的文件还是不在那么对不起我就不工作啦 知道了这些东西那么我们如何着手去使用make构建项目呢 makefile的编写 创建一个名为makefile或者Makefile的文件只能是这两种可能否则make识别不出来在makefile中写入内容 建立依赖关系谁依赖于谁例如上述的实例就是test_make依赖于test_make.c所以在makefile的首行写test_make:test_make.c意思是test_make是由我们自己写的test_make.c编译得来的 新起一行必须以tab键开头(不能是四个空格)写编译的指令例如上述的gcc -o test_make test_make.c makefile的使用 当我们写好makefile之后直接使用make 目标文件名/指令名就可以达到使用make和makefile构建项目的目的但是我们上述的实例中直接使用了make指令没有加上刚刚说的目标文件也能够正常执行达到效果为什么呢这是因为在makefile中被一个目标文件直接或者间接关联那么他后面所定义的命令能够被自动执行。 4.项目清理 工程是需要被清理的 在上述的makefile中我们同时设置了clean这个目标指令的他的目的就是为了清除我们编译好的工程文件。 但是我们回到上述实例中可以发现多了一行内容是我们不理解的东西那么它是什么呢 .PHONY表示被该关键字修饰的对象是一个伪目标这里我们引入了一个新的概念叫做伪目标 什么是伪目标 还是使用之前的那个test_make我们发现当该路径下没有目标文件的时候我们能够正常的执行make指令但是当我们想再次执行make指令的时候发现出现了提示没有办法正常执行make指令。反而我们在执行make clean的时候没有这种情况能够连续执行任意次的make clean。这就是伪目标的作用。伪目标表示该目标是永远被执行的 对于上述的情况我们只需要再修改一下源文件test_make.c就会发现make又可以正常执行一次了。这是因为make会识别我们上一次编译之后源文件是否已经被修改如果没有被修改就不需要再次执行编译操作(这一点是很重要的一个中大型的项目编译所花的时间短则几十分钟长则几个小时甚至十几个小时)。 那么make是怎么知道源文件有没有被修改的呢 答案是比较时间比较源文件和目标文件的内容修改时间 我们知道是先有源文件在有目标文件的所以我们只需要比较源文件和目标文件的内容修改时间如果源文件的内容修改时间早于目标文件的修改时间那就说明源文件在生成目标文件之后没有被更改所以就没有再次编译的必要否则就需要再次编译。 5. 文件属性中的三个时间 上面我们讲到了文件的修改时间在这里我们详细介绍一下文件的“三个时间”。 使用stat指令我们可以看到文件的详细信息其中就包括了文件的创建时间修改时间与最后一次访问时间 对于modify和change的时间是容易理解的但是access的时间改变规则有些不一样 因为对一个文件的访问是很频繁的如果每一次的访问都要修改access时间的话会导致系统的负荷太大所以新的Linux内核就对access时间的修改规则做了修正变成了根据一段时间内访问频率再去更新。 6. Linux下第一个小程序——进度条 6.1 前置知识1缓冲区 对于这个测试执行之后的结果是在屏幕上正常的打印hello world然后停留一秒钟之后再提示输入下一个指令但是我们将printf中的‘\n’去掉然后再编译执行得到的可执行会发现屏幕中没有立刻显示hello world而是再一秒钟后再显示的这是因为每一行的内容会先放在缓冲区中当执行回车换行也就是‘\n’之后才会显示否则就需要等当前进程结束之后再显示所以为了让上述程序在没有‘\n’也能正常执行我们需要使用fflush刷新缓冲区即 然后我们发现该程序可以正常执行输出然后再停顿了。 6.2前置知识2回车换行 在刚刚我们提到了回车换行的概念但是回车和换行是两个概念回车表示的是回到当前行的开头位置用\r表示换行表示光标换到下一行的同一位置但是到这里就会有疑问我们键盘上的enter键一般不就是叫做回车键嘛我们注意一下早期的键盘上回车键是什么样子的 用了一个向下和向左的箭头表示着这个键的作用是让光标去到下一行的开头。 那么如果不换行只回车的话会出现什么情况呢 答案是会将屏幕上当前行的内容覆盖掉。 那么利用这种特性我们能够写出一个简易的倒计时程序 运行的结果是这样的 这就是我们利用缓冲区和回车换行的特性写出来的简易倒计时。 6.3进度条的实现 有了上述的两个前置知识我们就可以利用已知的知识写出进度条啦 接下来我们尝试一下多文件编程首先定义一下头文件和主要的实现源文件还有主函数文件分别命名为process.hprocess.cmain.c然后对于一整个项目我们要写一下makefile文件所以一共要创建四个文件 $ touch makefile process.c process.h main.c各个部分代码如上然后使用make编译产生可执行文件ProcessOn,运行效果如下 7 Linux下git的”三板斧“ 由于Linux是没有图形化界面的所以我们在Windows下使用的“小乌龟”在这里就不能用了所以我们要学一下git的命令行使用方式 1. git clone 首先我们需要将已有的仓库拷贝到本地所以就有了git clone指令该指令后面跟我们需要拷贝的仓库的链接 2. git add 我们在本地写的代码需要添加到本地仓库所以需要使用git add指令添加git add指令后跟文件名这里我们经常使用的是git add .表示将所有新增文件全部添加 3. git commit 对标Windows下使用小乌龟的过程我们同样需要commit我们在commit的同时还需要附带本次上传的说明git commit -m 说明文字 4. git push 上传到本地仓库之后我们还需要上传到线上的仓库对标”小乌龟“我们需要push所以使用git push指令 注默认每次上传的时候都要输入用户名和密码这里可以配置成不需要输入但是还是建议每次都手动输入点我配置免密码提交 5. git log 我们的每次上传都会被记录下来成为日志使用git log就可以查看提交日志 本节完。。。
http://www.dnsts.com.cn/news/223145.html

相关文章:

  • 网站如何做攻击防护网站系统找不到指定的文件
  • 济南企业型网站做服装设计兼职的网站
  • 搭建网站论坛网页制作要学什么课程
  • 旅游网站建设的方法网站后台有些不显示
  • 蕲春县住房和城乡建设局网站溧水做网站价格
  • 如何自己制作自己的网站网络设计课程有哪些
  • 沭阳哪里有做网站推广的西安做软件的公司
  • 汽车网站图片网站开发前台和后台
  • 五站合一网站建设404 not found wordpress
  • 南宁公司的网站建设网站建设与维护典型案例
  • 做外汇网站做什么类型网站好江津网站建设
  • 易企互联网站建设专业做商铺的网站
  • 网站开发技术服务合同学用php做网站
  • 品牌策划大赛优秀作品windows7优化大师
  • 服务器重启 iis网站暂停网站开发毕设的需求分析
  • 网站设计制作音乐排行榜国内永久免费crm系统网站推荐有哪些
  • 在线教育网站html模板中国营销协会官网
  • 安徽工程建设信息网站网站搭建北京
  • 做宣传的网站有哪些十堰网站seo技巧
  • 做网站赚钱 知乎外包平台都有哪些
  • 青岛专业做网站网络架构师论文
  • 三门峡做网站网站优化推广 site
  • 网站建设需要数据库吗邯郸网络教研中心
  • 做分销网站系统html爱心代码
  • 写作网站大全怎么注册网站啊
  • 哪个行业必须做网站如何发布自己的广告
  • 响应式网站建设软文建设h网站风险大吗
  • 企业网站备案时间网站建设基础知识及专业术语
  • 网站栏目建设图怎么自己制作一首歌曲
  • 电脑商城网站源码如何做一个静态网站