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

东莞公司网站建设小知识自己可以做电子商务网站

东莞公司网站建设小知识,自己可以做电子商务网站,重庆专业网站搭建,怎样把域名和做的网站连接不上目录 Linux下的编辑器 介绍#xff1a; 1#xff0c;编辑器gcc/g 1-1#xff0c;系统的编译过程 1-2#xff0c;预处理过程 1-3#xff0c;编译过程 1-4#xff0c;汇编过程 1-5#xff0c;链接过程 Linux下的编辑器 介绍#xff1a; Linux系统下可支持很多高…目录 Linux下的编辑器 介绍 1编辑器gcc/g 1-1系统的编译过程 1-2预处理过程 1-3编译过程 1-4汇编过程 1-5链接过程 Linux下的编辑器 介绍 Linux系统下可支持很多高级语言的编辑不同的编辑工具对应不同的语言。本章我们重点介绍C语言的编辑器 gcc 和C的编辑器 g其中g也可编辑C语言的文本但gcc不可编辑C的文本。 1编辑器gcc/g 我们都知道文件的编译过程需要经过预处理、编译、汇编、链接过程直接 gcc [文件] 将会直接一次性执行完编辑文本的过程形成可执行文件。 上图中我们形成的可执行文件是系统默认命名的使用 gcc code.c -o code.exe 或 gcc -o code.exe code.c 都将可执行文件命名为code.exe即凡是跟在 -o 选项后面的名称都是可执行文件的命名。 1-1系统的编译过程 众所周知计算机的语言发展先是从二进制语言到汇编语言然后不断发展有了许多的高级语言因此高级语言在计算机内部执行时需要将其翻译成汇编语言然后从汇编语言翻译成二进制语言因为发展过程都是要先有语言然后才有了编译器。 当对文本进行编辑工作时首先在预处理过程中系统会将头文件展开(本质是将头文件内容拷贝至源文件)、去掉文本中的注释、进行宏的替换、条件编译等。下一步进入编译工作时系统会将高级语言编译成汇编语言然后进入汇编阶段中系统将汇编语言编译成二进制文件此二进制文件称为 “可重定位目标二进制文件” 注意此时的二进制文件是不可执行的。因为此时的二进制文件还没有与高级语言中特定的库文件形成关联即没有联系而链接过程就是使用标准库文件将形成的二进制文件与高级语言标准库文件中的代码形成关联使系统能够识别其中代码的功能。 库文件 库文件是预先编译好的函数功能的集合可以将用户写好的程序打包成一个整体当其他模块或用户使用时只需要这个库文件即可不需要源代码文件。其中库文件主要分为静态库和动态库程序在使用库时使用静态链接或动态链接进行静态库或动态库的关联。Linux中静态库文件以 .a 后缀名动态库文件以 .so 后缀名Windows中静态库文件以 .lib 为后缀名动态库文件以 .dll 为后缀名。 静态库的特点是程序在编译连接的过程当中编译器从库文件中取得所需代码复制到生成的可执行文件中。因此静态库是程序在链接阶段被复制到程序当中和程序的执行过程没有关系。 动态库也称为共享库的特点是在程序运行时由系统动态加载到内存中程序在使用时直接关联。因此动态库可以被多个程序共享同时只占用一份内存空间提高了内存的使用效率。 我们可使用 ldd 指令来观察可执行文件所依赖的库文件。 [zhuzhujunhao ~]$ ldd code   查看C语言中可执行文件code所依赖的库文件     linux-vdso.so.1  (0x00007ffd9b12a000)     libc.so.6 /lib64/libc.so.6 (0x00007fde6069b000)  code依赖动态库/lib64/libc.so.6     /lib64/ld-linux-x86-64.so.2 (0x00007fde60a69000) /lib64/libc.so.6这个文件就是C语言标准动态库标准静态库是/lib64/libc.a因此在Linux中我们可直接使用C语言。其它语言也同理平台要支持一种语言的开发就必须要提前在系统中安装这种语言的标准头文件和库文件。 1-2预处理过程 当我们只想要查看预处理生成的内容时使用 gcc -E [目标文件] 可在直接显示预处理处理后生成的数据使用 gcc -E [目标文件] -o [文件] 这里选项不分前后顺序会将源文件处理后的数据放入 [文件] 中。当不存在 [文件] 时系统会自动创建此文件。这里的 -E 表示系统将预编译过程处理完后停止。 [zhuzhujunhao ~]$ gcc -E code.c -o code.i   将 code.c 文件经预处理后生成的数据放入 code.i 中 [zhuzhujunhao ~]$ ll total 36 -rw-rw-r-- 1 zhu zhu    89 Dec  6 08:46 code.c -rw-rw-r-- 1 zhu zhu 25606 Dec  6 08:47 code.i -rw-rw-r-- 1 zhu zhu   827 Dec  5 14:52 install.sh 在预处理过程我们可使用 -D [宏名称] 自动将宏加入源文件中在预处理阶段也会将其一并处理。这里要注意这里的指令添加只是暂时将其添加再次进入文本后可观察到没有此宏。 [zhuzhujunhao ~]$ gcc code.c -DSETVECTOR1 -o code.exe [zhuzhujunhao ~]$ ./code.exe have SETVECTOR1      可发现存在此宏 预编译过程将添加的宏进行替换但在其它阶段不可因为只有在预编译过程中才处理宏 [zhuzhujunhao ~]$ gcc -E code.c -D SETVECTOR -o code.i   因此通过以上可发现我们在系统编程的过程中我们可实现自己代码和编译器指令的动态裁剪。 1-3编译过程 当我们只想要观看编译处理后的内容时需使用  -S 选项使用方法跟预处理使用的语法和方法一样即gcc -S [目标文件] -o [文件]这里选项不分前后顺序将处理完的数据放到 [文件] 中不同的是[目标文件] 可以是C语言源文件也可以是预处理后的文件。-S 表示系统将编译过程处理完后就停止。 [zhuzhujunhao ~]$ gcc -E code.c -o code.i    预处理后的文件code.i [zhuzhujunhao ~]$ gcc -S code.c -o code.s    处理C语言源文件形成文件code.s [zhuzhujunhao ~]$ gcc -S code.i -o code.s1   处理预处理的文件形成文件code.s1 此过程结束后将会形成汇编语言即系统调用汇编编译器形成汇编语言。 1-4汇编过程 只观看汇编处理后的数据对应的选项为 -c 用法一样指令为 gcc -c [目标文件] -o [文件]这里选项不分前后顺序将汇编形成的二进制数据放入 [文件] 中其中 [目标文件] 可以是C语言源文件可以是预处理后的文件可以是编译过程中形成的汇编文件。-c 表示当系统将汇编过程处理完后就停止。 [zhuzhujunhao ~]$ gcc -c code.c -o code.o  处理C语言源文件code.c [zhuzhujunhao ~]$ gcc -c code.i -o code.o   处理预处理后的文件code.i [zhuzhujunhao ~]$ gcc -c code.s -o code.o  处理编译后的汇编文件code.s 上面的形成的 code.o 文件就是二进制文件。 1-5链接过程 链接是系统处理的最后一步这里不需要任何选项直接 gcc 编译即可即 gcc [目标文件] -o [文件] 这里选项不分前后顺序这里形成的文件就是将二进制文件与标准库文件链接后的可执行文件。这里表示的是系统直接处理 [目标文件] 形成可执行文件。 [zhuzhujunhao ~]$ gcc code.o -o code    将二进制文件code.o链接 可发现这就是我们平常直接将源文件形成可执行文件的指令。即链接指令。 链接过程中系统默认使用动态链接C语言的动态库在 /lib64/libc.so.6 文件下而C的动态库在  /lib64/libstdc.so.6 文件下其中使用 -static 可在链接时改为静态链接这里要注意的是有些系统默认可能没有安装静态库。我们需要去安装静态库安装C和C的静态库指令如下 [rootzhujunhao ~]# yum install -y glibc-static libstdc-static    glibc-static 是C语言的静态库         libstdc-static是C的静态库 其中C语言安装后的静态库在 /lib64/libc.a 文件下C的静态库在 /lib64/libstdc.a 文件下。 链接过程使用静态链接指令如下 [zhuzhujunhao ~]$ gcc code.c -o code-static -static [zhuzhujunhao ~]$ ldd code-static     not a dynamic executable    查看后可发现链接的不是动态库即链接静态库 g的使用都与gcc一样注意的是系统原本没有安装 g 编译器在 CentOS 版本下安装g 相关的步骤在此链接下CentOS下的g安装
http://wiki.neutronadmin.com/news/303478/

相关文章:

  • 网站怎么做站长统计在旅行社做网站运营
  • 祥云平台网站建设网站搭建教学
  • 方案网站有哪些html5网站源代码
  • 建立网站需要准备的材料广州华优_网站建设公司
  • 石家庄行业网站给军方做网站套模板行不行
  • ci策划 网站开发冬夜主题wordpress
  • 网站所有页面只显示域名平湖市住房和城乡规划建设局网站
  • wap企业网站linux网站开发工具
  • wordpress diy插件广州seo网站多少钱
  • 网站建设咨询有客诚信网站建设咨询泰安市住房和城乡建设部网站
  • 丽水开发区建设局网站廉租房苏州十大广告公司
  • seo站内优化公司知乎类 wordpress
  • 商城购物网站建设方案高端网站建设好的公司
  • 网站等比例缩放帮忙建设公司网站
  • 无锡市网站建设关于申请网站建设的请示
  • 网站服务器免费申请wordpress社交图标
  • 安全质量报监建设局网站全屋定制给设计吗
  • flask做的购物网站青海政企网站建设
  • 女人吃男人做床视频网站wix网站做图片能折叠吗
  • 没有网站可以做京东联盟吗电子商务网站建设与设计论文
  • 做pc网站如何实时预览外贸建网站
  • 酷站海洛网站开发软件 论文 摘要
  • 网站建设术语名词如何做漫画网站
  • 西宁高端网站建设备案变更网站信息
  • 网站设计的原则不包括软文优化
  • 网站开发项目计划书模板搜狐快站建设pc网站
  • 南昌企业自助建站wordpress 表单页面
  • 做公司网站需要注意什么域名做好了怎么做网站内容
  • 环保设备在那个网站做深圳市龙岗区住房和建设局
  • 福田搭建网站费用深圳最好的app开发公司