宜兴市网站建设wordpress 预览demo

web/2025/9/30 10:23:46/文章来源:
宜兴市网站建设,wordpress 预览demo,线上编程课推荐哪一个,电商平台有哪些类型1简介 2简单编译 2.1预处理 2.2编译为汇编代码(Compilation) 2.3汇编(Assembly) 2.4连接(Linking) 3多个程序文件的编译 4检错 5库文件连接 5.1编译成可执行文件 5.2链接 5.3强制链接时使用静态链接库 1简介 GCC 的意思也只是 GNU C Compiler 而已。经过了这么多年的发展#… 1简介 2简单编译 2.1预处理 2.2编译为汇编代码(Compilation) 2.3汇编(Assembly) 2.4连接(Linking) 3多个程序文件的编译 4检错 5库文件连接 5.1编译成可执行文件 5.2链接 5.3强制链接时使用静态链接库 1简介 GCC 的意思也只是 GNU C Compiler 而已。经过了这么多年的发展GCC 已经不仅仅能支持 C 语言它现在还支持 Ada 语言、C 语言、Java 语言、Objective C 语言、Pascal 语言、COBOL语言以及支持函数式编程和逻辑编程的 Mercury 语言等等。而 GCC 也不再单只是 GNU C 语言编译器的意思了而是变成了 GNU Compiler Collection 也即是 GNU 编译器家族的意思了。另一方面说到 GCC 对于操作系统平台及硬件平台支持概括起来就是一句话无所不在。 2简单编译 示例程序如下 //test.c #include stdio.h int main(void) {printf(Hello World!\n);return 0; } 这个程序一步到位的编译指令是: gcc test.c -o test 实质上上述编译过程是分为四个阶段进行的即预处理(也称预编译Preprocessing)、编译(Compilation)、汇编 (Assembly)和连接(Linking)。 2.1预处理 gcc -E test.c -o test.i 或 gcc -E test.c 可以输出test.i文件中存放着test.c经预处理之后的代码。打开test.i文件看一看就明白了。后面那条指令是直接在命令行窗口中输出预处理后的代码. gcc的-E选项可以让编译器在预处理后停止并输出预处理结果。在本例中预处理结果就是将stdio.h 文件中的内容插入到test.c中了。 2.2编译为汇编代码(Compilation) 预处理之后可直接对生成的test.i文件编译生成汇编代码 gcc -S test.i -o test.s gcc的-S选项表示在程序编译期间在生成汇编代码后停止-o输出汇编代码文件。 2.3汇编(Assembly) 对于上一小节中生成的汇编代码文件test.sgas汇编器负责将其编译为目标文件如下 gcc -c test.s -o test.o 2.4连接(Linking) gcc连接器是gas提供的负责将程序的目标文件与所需的所有附加的目标文件连接起来最终生成可执行文件。附加的目标文件包括静态连接库和动态连接库。 对于上一小节中生成的test.o将其与标准输入输出库进行连接最终生成程序test gcc test.o -o test 在命令行窗口中执行./test, 让它说HelloWorld吧 3多个程序文件的编译 通常整个程序是由多个源文件组成的相应地也就形成了多个编译单元使用GCC能够很好地管理这些编译单元。假设有一个由test1.c和 test2.c两个源文件组成的程序为了对它们进行编译并最终生成可执行程序test可以使用下面这条命令 gcc test1.c test2.c -o test 如果同时处理的文件不止一个GCC仍然会按照预处理、编译和链接的过程依次进行。如果深究起来上面这条命令大致相当于依次执行如下三条命令 gcc -c test1.c -o test1.o gcc -c test2.c -o test2.o gcc test1.o test2.o -o test 4检错 gcc -pedantic illcode.c -o illcode -pedantic编译选项并不能保证被编译程序与ANSI/ISO C标准的完全兼容它仅仅只能用来帮助Linux程序员离这个目标越来越近。或者换句话说-pedantic选项能够帮助程序员发现一些不符合 ANSI/ISO C标准的代码但不是全部事实上只有ANSI/ISO C语言标准中要求进行编译器诊断的那些情况才有可能被GCC发现并提出警告。 除了-pedantic之外GCC还有一些其它编译选项也能够产生有用的警告信息。这些选项大多以-W开头其中最有价值的当数-Wall了使用它能够使GCC产生尽可能多的警告信息。 gcc -Wall illcode.c -o illcode GCC给出的警告信息虽然从严格意义上说不能算作错误但却很可能成为错误的栖身之所。一个优秀的Linux程序员应该尽量避免产生警告信息使自己的代码始终保持标准、健壮的特性。所以将警告信息当成编码错误来对待是一种值得赞扬的行为所以在编译程序时带上-Werror选项那么GCC会在所有产生警告的地方停止编译迫使程序员对自己的代码进行修改如下 gcc -Werror test.c -o test 5库文件连接 开发软件时完全不使用第三方函数库的情况是比较少见的通常来讲都需要借助许多函数库的支持才能够完成相应的功能。从程序员的角度看函数库实际上就是一些头文件.h和库文件so、或lib、dll的集合。。虽然Linux下的大多数函数都默认将头文件放到/usr/include/目录下而库文件则放到/usr/lib/目录下Windows所使用的库文件主要放在Visual Stido的目录下的include和lib以及系统文件夹下。但也有的时候我们要用的库不再这些目录下所以GCC在编译时必须用自己的办法来查找所需要的头文件和库文件。 例如我们的程序test.c是在linux上使用c连接mysql这个时候我们需要去mysql官网下载MySQL Connectors的C库下载下来解压之后有一个include文件夹里面包含mysql connectors的头文件还有一个lib文件夹里面包含二进制so文件libmysqlclient.so 其中inclulde文件夹的路径是/usr/dev/mysql/include,lib文件夹是/usr/dev/mysql/lib 5.1编译成可执行文件 首先我们要进行编译test.c为目标文件这个时候需要执行 gcc –c –I /usr/dev/mysql/include test.c –o test.o 5.2链接 最后我们把所有目标文件链接成可执行文件: gcc –L /usr/dev/mysql/lib –lmysqlclient test.o –o test Linux下的库文件分为两大类分别是动态链接库通常以.so结尾和静态链接库通常以.a结尾二者的区别仅在于程序执行时所需的代码是在运行时动态加载的还是在编译时静态加载的。 5.3强制链接时使用静态链接库 默认情况下 GCC在链接时优先使用动态链接库只有当动态链接库不存在时才考虑使用静态链接库如果需要的话可以在编译时加上-static选项强制使用静态链接库。 在/usr/dev/mysql/lib目录下有链接时所需要的库文件libmysqlclient.so和libmysqlclient.a为了让GCC在链接时只用到静态链接库可以使用下面的命令: gcc –L /usr/dev/mysql/lib –static –lmysqlclient test.o –o test 静态库链接时搜索路径顺序 1. ld会去找GCC命令中的参数-L 2. 再找gcc的环境变量LIBRARY_PATH 3. 再找内定目录 /lib /usr/lib /usr/local/lib 这是当初compile gcc时写在程序内的 动态链接时、执行时搜索路径顺序: 1. 编译目标代码时指定的动态库搜索路径 2. 环境变量LD_LIBRARY_PATH指定的动态库搜索路径 3. 配置文件/etc/ld.so.conf中指定的动态库搜索路径 4. 默认的动态库搜索路径/lib 5. 默认的动态库搜索路径/usr/lib 有关环境变量 LIBRARY_PATH环境变量指定程序静态链接库文件搜索路径 LD_LIBRARY_PATH环境变量指定程序动态链接库文件搜索路径

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/84403.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站查询工信部wordpress开启远程发布

文章目录 前言模块添加方法双特征提取例子`GhostNet+ShuffleNet` 双主干结构图代码`Swin+ShuffleNet` 双主干结构图代码参数量与计算量1. 什么是YOLO-Magic框架?2. 如何加入这个框架?3. 加入后如何使用框架?4. GitHub组织是什么?

网站开发 项目式说课企业网站不备案

在使用IAR开发STM32项目时,使用串口或者是虚拟终端来输出我们想看的信息是一个非常好而且简便的方式。 首先来看看串口怎么实现信息输出。简单来说串口输出信息就是将标准输出重定向到串口,在上位机的超级终端或者串口助手等工…

外贸怎么用网站开发新客户asp网站缺点

4.12、BOM对象(了解) BOM:Broswer object model,即浏览器提供我们开发者在javascript用于操作浏览器的对象。 4.12.1、window对象 窗口方法 // BOM Browser object model 浏览器对象模型// js中最大的一个对象.整个浏览器窗口出现的所有东西都是win…

木木科技 网站艰涩莱芜都市网人才网

Git 和 GitHub 是现代软件开发中不可或缺的工具,无论你是个人开发者还是团队成员,掌握它们都能极大提升效率。本文精选了一系列优质教程资源,涵盖从基本 Git 命令到进阶多人协作的内容。这些教程既有文字形式,也有视频或交互式资源…

谷歌自建站和优化西宁建一个网站公司

原标题:代取快递的变现方式,校园跑腿的经营范围有多大?进入大学,随着越来越多的学生加入到网购的行列。快递在学校也是堆积成山,高校校园快递市场也日渐红火。但往往带来的也有更多的麻烦,学生取快递时间变…

对商家而言网站建设的好处同心食品厂网站建设项目任务分解

目录 ​编辑 一,引入 二,在Server端修改的代码 1,保存用户信息功能实现 2,拼接消息 3,广播消息 三, Client端要修改的代码 四,效果演示 一,引入 在上一篇文章udp网络服务器中&a…

建设银行网上银行网站进入不了一键建站哪家信誉好

简介 对于 对象--json 数据的序列化和反序列有很多的工具可以选择,fastjson和jaskson等,fastjosn有时候麻烦,不想再导入依赖文件,这时候我们可以使用springboot默认的json工具--Jaskson 使用 主要会用 objectMapper.writeValu…

网站建设与应用岗位临汾万词霸屏网站建设免费咨询

文章目录 前言2D官方游戏案例资源下载项目配置添加角色节点模拟运行移动根节点 结束 Godot专栏地址 前言 Godot 官方给了我们2D游戏和3D游戏的案例,不过如果是独立开发者只用考虑2D游戏就可以了,因为2D游戏纯粹,我们只需要关注游戏的玩法即可…

建站工具也成为什么系统做个网站一年要多少钱

写在前面千呼万唤始出来,首先,请允许我长吸一口气!真没想到一份来自28岁老程序员的自白 这篇文章会这么火,更没想到的是张善友队长的公众号居然也转载了这篇文章,这就导致两天的时间就有两百多位读者朋友加入了.NET Co…

北京网站设计技术乐云seo丹东制作网站公司

LockSupport类是Java6(JSR166-JUC)引入的一个类,提供了基本的线程同步原语。LockSupport实际上是调用了Unsafe类里的函数,归结到Unsafe里,只有两个函数: park:阻塞当前线程(Block current thread),字面理解park&#x…

中国空间站简介100字网站未备案可以做经营活动吗

登陆SAP 之后,菜单下面一行,最右边的那个彩色按钮(SAP GUI),点击“选项”-可视设计-字体设计-固定狂赌字体设计,点击:选择字体 即可。转载于:https://www.cnblogs.com/RogerLu/p/9612648.html

公司网站建设费用包括哪些免费做网站的公司

目录 一、JShell 二、Dynamic Class-File Constants类文件新添的一种结构 三、局部变量类型推断(var ”关键字”) 四、新加的一些实用API 1. 新的本机不可修改集合API 2. Stream 加强 3. String 加强 4. Optional 加强 5. 改进的文件API 五、移…

自己在线制作logo免费网站心理学门户网站开发与实现

🍅 点击文末小卡片 ,免费获取网络安全全套资料,资料在手,涨薪更快 研判(入侵检测) 研判我理解为人工层面对入侵检测事件进行再分析,即借助已有的设备告警根据经验判断是否为真实action 研判工作…

昆山公司网站建设电话免费网站建设 免备案

JIRA 重建索引加快速度 JIRA数据量大时,做一遍reindex的速度会很慢,经常需要几个小时 这是后需要查看CPU,如果做reindex时候CPU占用率不高,增加 index的线程数以加快 reindex 配置步骤 停止掉JIRA在home目录下的 jira-config.…

南充北京网站建设域名价格排行

目录 一、EnableWebMvcSecurity 二、MvcRequestMatcher 三、AuthenticationPrincipal 四、异步 Spring MVC 整合 五、Spring MVC 和 CSRF 整合 1、自动包含 Token 2、解析 CsrfToken Spring Security提供了一些与Spring MVC的可选整合。本节将进一步详细介绍这种整合。 …

h5网站制作价格大连企业做网站

TCP是通过确认机制和超时重传机制实现可靠传输 UDP UDP它不属于连接型协议,因而具有资源消耗小,处理速度快的优点,所以通常音频、视频和普通数据在传送时使用UDP较多,因为它们即使偶尔丢失一两个数据包,也不会对接收结…

asp企业网站源码docker wordpress 备份

学习是有境界的,下面以C语言中的结构型为例简单分析。 第一种境界:理解了。 结构型是自定义数据类型,与C语言中基本的数据类型如int的作用相同,用于定义变量。(变量是内存中存储单元的标识,C语言中通过变…

数字营销 h5 网站开发外包岗位为什么不能去

目录 面试官:redis的分片集群有什么作用 面试官:Redis分片集群中数据是怎么存储和读取的? 面试官:redis的分片集群有什么作用 候选人:分片集群主要解决的是,海量数据存储的问题,集群中有多个m…

网站制作 常见问题广告设计与制作需要学什么专业

用手机号申请了163免费邮箱,在网页端或手机网易邮箱客户端可以正常登录,但在电脑Foxmail客户端中,按相同的邮件服务器进行设置,显示密码不正确。难道163邮箱已经不支持PC中的Foxmail客户端了吗?让我们一同探究解决之道…

用织梦网站后台发布文章为什么还需要审核河南开封网站建设

id:19 A.三数论大小(引用) 题目描述 输入三个整数,然后按照从大到小的顺序输出数值。 要求:定义一个函数,无返回值,函数参数是三个整数参数的引用,例如int &a, int &b, int &c。…