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

河南省建设厅网站无事故证明网站开发与设计培训的就业前景

河南省建设厅网站无事故证明,网站开发与设计培训的就业前景,上海千途网站建设,房地产市场分析及前景我们在vs编译器中写的代码按下ctrl f5就可以直接运行起来#xff0c;并且会将运行的结果显示到显示器上#xff0c;这里看上去只有一个步骤但实际上这里会存在很多的细节#xff0c;比如说生成结果在这里插入代码片之前我们的代码会经过预处理#xff0c;编译#xff0c;汇…我们在vs编译器中写的代码按下ctrl f5就可以直接运行起来并且会将运行的结果显示到显示器上这里看上去只有一个步骤但实际上这里会存在很多的细节比如说生成结果在这里插入代码片之前我们的代码会经过预处理编译汇编链接的过程不同的过程会对应不同的操作那么接下来我们就会一个一个的介绍这些操作所对应的操作。 预处理 程序运行的第一步就是预处理预处理的目的就是将头文件展开去掉注释宏替换删除条件编译比如说我们创建一个临时文件test.c 并且在这个文件里面输入一些内容 1 #includestdio.h 2 #define NUM_A 20 3 #define NUM_B 30 4 int main()5 {6 #ifdef add7 printf(相加的结果为%d\n,NUM_ANUM_B);//计算相加的结果8 #else9 printf(相减的结果为%d\n,NUM_A-NUM_B);//计算相减的结果 10 #endif 11 return 0; 12 } 然后我们就退出并且保存这个文件 到这里我们的准备工作就完成了。平时我们运行文件使用的指令是gcc test.c 使用这个指令会自动的生成一个文件叫a.out并且这个文件是一个可执行程序我们运行一下这个程序就可以可以看到我们的屏幕上面出现了上面代码的运行的结果 但是这里有个问题使用这个指令我们看不到预处理的结果它直接变成了可执行程序所以得在这个指令里面添加一个-E选项这个选项的功能就是从重现在开始进行程序的翻译将程序的预处理执行完后就停下来所以使用这个选项我们就可以看到代码经过预处理之后的结果那么这里的指令就是这样gcc -E test.c执行的结果如下 我们可以看到这里出现很多乱七八糟的内容那是因为这个指令将执行的结果全部都打印到屏幕上了由于内容很多就显得很乱不好查看所以这里我们还可以在这个指令里面添加一个-o选项这个选项的功能就是将指令的运行的结果放到一个文件里面在-o的后面加上你要放的文件如果这个文件不存在的话这个指令会自动生成对应的文件比如说我们将上面的指令修改成这样gcc -E test.c -o test.i当前目录下是没有test.i这个文件的所以使用这个指令后我们会自动的生成test.i这个文件 并且这个文件里面装的内容就是之前显示在屏幕上的内容 我们可以使用vs指令将test.c文件显示在屏幕上进行对比 我们使用shiftg将右边屏幕的光标移动到最后一行 我们可以看到在test.i文件的最后出现了test.c文件中的大致内容但是却略有不同这是test.i的相关内容 这是test.c的全部内容 仔细的观察一下我们可以看到有以下几点的不同 test.c中的2 3 行定义的宏被删除了。test.c中的7 9行的注释被删除了。test.c中的7 9行中使用的宏被替换成了我们定义的值也就是说NUM_A替换成了20NUM_B替换成了30。test.c中没有被执行的条件编译被删除了也就是第6 7 8 10行的内容被删除了。test.c中的头文件被删除了但是在test.i中出现了更多杂七杂八的东西所以在预编译的过程中将头文件中的内容加载到test.i的文件里面。 那么这就是预编译所做的一些操作将头文件展开去掉注释宏替换删除条件编译那么这里大家要注意的一点就是在linux操作系统中文件的后缀是没有意义的也就是说这里的后缀i对于操作系统来说是没有什么特殊意义的但是这个后缀对我们使用者来说却有很多的意义比如说我们看到了一个文件的后缀是i就可以想到这个文件是经过预处理后生成的文件所以大家在执行这些操作生成文件的时候还是要将后缀写成对应的形式以免混淆别人那么上面就是预处理要干的事情。 编译 经历完预处理之后要执行的操作就是编译编译要干的事情就是将c语言翻译成汇编语言那么这里要执行的指令就是gcc -S test.i -o test.s那么这里-S选项的作用就是从现在开始进行程序的翻译将汇编工作完成之后工作就停止后面加了一个-o选项所以这里会将执行完之后的结果放到test.s这个文件里面执行完这个指令我们就可以看到这里自动的生成了一个test.s文件在这个文件里面有我们好多我们看不懂的内容 虽然下面的内容我们看不懂但是可以知道的一件事就是这个test.o文件里面的内容是汇编语言 我们知道计算器能够识别的语言是二进制语言而test.o文件里面装的是汇编语言所以这里的test.o文件无法被运行。 汇编 通过上面的讲解我们知道编译是将c语言翻译成汇编语言那么这里的汇编要干的事情就是将生成的汇编语言翻译二进制语言那么这里需要的指令就是gcc -c test.s -o test.o,-c选项的作用就是从现在开始进行翻译将文件中的汇编语言翻译成二进制语言就停止比如说下面的操作 这里就自动生成一个test.o文件我们打开这个文件就可以看到文件中的内容就变成了各种奇奇怪怪的符号 这就是文件经过汇编之后的结果那么这时肯定会有小伙伴想啊既然这个文件的内容是二进制的话我们是不是就可以运行这个文件呢那么这里可以试一下看看能不能运行 结果很明显这个文件是无法运行的原因也非常的简单因为我们上述的三个过程预处理 编译 汇编所干的事情是翻译的过程也就是把你的代码进行修剪然后翻译成二进制文件但是这里有个问题就是你的代码里面用了很多别人的函数你没有在这个文件里面实现这些函数比如说printf函数scanf函数main函数等等这些函数你都没有实现虽然你包含了头文件stdio.h但是这个文件里面只有这些函数的声明没有这些实现所以将我们的代码翻译成二进制文件还是无法满足运行的需求所以这里我们还得进行下一步链接。 链接 链接干的事情就是把我们自己写的代码代码和c标准库的代码合并起来这个标准库里面装的就是各种c语言函数的具体实现等等所以当二进制文件经过链接后里面使用的函数就有了具体的实现就可以正常的被执行了那么这里的用的之指令就是gcc test.o 这里我们不使用-o选项的话这里就会自动生成一个名为a.out的可执行程序当然这里我们也可以人为的生成一个可执行程序那么这里就得加上一个-o选项那么这里的指令就是gcc test.o -o mytest 当生成完可执行程序之后就可以运行以下这里的可执行文件 那么上述就是这篇文章的全部内容希望大家可以理解谢谢。
http://www.hkea.cn/news/14296679/

相关文章:

  • 上海响应式网站wordpress汉字注册
  • php网站开发说明如何推广一个品牌
  • 包头网站建设熊掌号iis建设网站
  • 企业网站设计wordpress网络推广平台在哪里有
  • 国外特效网站免费素材网址
  • 电商网站流量统计国外做网站的软件
  • go生物网站做蛋白定位江苏两学一做网站
  • 高淳哪家做网站不错厦门建行网站首页
  • 怎么可以自己做网站软件开发培训学费
  • 诸暨北京网站制作公司有哪些ps做网站尺寸多少像素
  • 设计企业网站流程搜索引擎关键词seo优化公司
  • 常州住房和城乡建设局网站酒店行业的网站建设
  • 敦煌网站建设手机网站有哪些
  • sns有哪些著名的网站想开发个网站
  • 金融做推广的网站北京网站开发怎么样
  • 网站建设工作会议.东莞外包公司有哪些
  • 西安学校网站制作wordpress+sdk.js好卡
  • 卖酒的网站做线下怎么做微网站怎么做的好名字吗
  • 网站的后缀名怎么建设做网站的步骤 优帮云
  • 达州网站建设的公司南宁工程建设信息网
  • 网站建设销售渠道网站开发 怎样做费用结算
  • 在线建站网站摄影网站设计报告
  • 成都网站建设私单少女のトゲ在线观看动漫
  • 网站已有备案了 现在换空间商还用备案么华润置地建设事业部官方网站
  • 网站怎么做实名认证吗wordpress正版
  • 广州建站哪个济南兴田德润实惠吗app网站及其特色
  • 户网站建设整改报告做企业网站的公司
  • 想做个电影网站该怎么做安徽省住房建设工程信息网站
  • 重庆营销型网站建设价格长沙网络建设的网站
  • 怎样维护公司网站百度问问首页