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

吉林市建设局网站肇庆网站优化建设

吉林市建设局网站,肇庆网站优化建设,在网站上怎么做推广,网站如何设置404页面三个问题 了解Hello World程序的执行过程有什么用? 编译和执行#xff1a;Hello World程序的执行分为两个主要步骤#xff1a;编译和执行。编译器将源代码转换为可执行文件#xff0c;然后计算机执行该文件并输出相应的结果。了解这个过程可以帮助我们理解如何将代码转化…三个问题 了解Hello World程序的执行过程有什么用? 编译和执行Hello World程序的执行分为两个主要步骤编译和执行。编译器将源代码转换为可执行文件然后计算机执行该文件并输出相应的结果。了解这个过程可以帮助我们理解如何将代码转化为可运行的程序。 语法和语义Hello World程序是一个简单的示例它包含一些基本的语法和语义规则。通过学习Hello World程序的执行过程我们可以了解如何正确使用编程语言的关键字、标识符、语句和表达式以及它们在程序中的作用。 调试和错误处理当我们编写代码时经常会出现错误。了解Hello World程序的执行过程可以帮助我们更好地理解和调试代码中的错误。我们可以学习如何查找和修复常见的语法错误和逻辑错误并提高代码的质量和可靠性。 程序输出和交互Hello World程序的执行结果通常是在终端或命令行中输出一段文本。这可以帮助我们理解程序如何与用户进行交互并将结果展示给用户。了解这个过程对于开发复杂的应用程序和用户界面是很重要的。 裸机开发中的HelloWorld程序是怎么执行的? 第一步进行源代码的编写其中关键的点在于printf函数的实现它需要依赖单片机的串口驱动程序。 第二步: 借助一些集成开发环境进行程序的编译。一键编译无需学习编译链接相关知识。 第三步: 借助烧录工具烧录到具体芯片上。一键烧录无需学习芯片的flash和各种各样启动方式。 第四步: 上电启动开发板串口输出“Hello World”字符串。 Linux系统下的Hello World程序是怎么执行的? 四个案例 gcc预处理c文件 COLLECT_GCC_OPTIONS-E -o hello.i -v -mtunegeneric -marchx86-64 /usr/lib/gcc/x86_64-linux-gnu/5/cc1 -E -quiet -v -imultiarch x86_64-linux-gnu hello.c -o hello.i -mtunegeneric -marchx86-64 -fstack-protector-strong -Wformat -Wformat-security 这是一个gcc编译器的命令行选项示例。它的作用是将C源文件hello.c预处理为hello.i文件。下面是每个选项的解释 -E: 表示只进行预处理不进行编译和链接操作。-o hello.i: 指定预处理输出的文件名为hello.i。-v: 详细输出编译器执行的信息。-mtunegeneric: 指定编译时针对通用处理器进行优化。-marchx86-64: 指定生成适用于x86-64架构的代码。-fstack-protector-strong: 生成强制堆栈保护的代码以防止缓冲区溢出漏洞。-Wformat -Wformat-security: 开启有关格式化字符串的警告。 gcc编译c文件 gecubuntu:~/hello$ sudo gcc -S hello.i -o hello.s -v COLLECT_GCC_OPTIONS-s -o hello.s -v -mtunegeneric -marchx86-64  /usr/lib/gcc/x86_64-linux-gnu/5/cc1 -fpreprocessed hello.i -quiet -dumpbase hello.i -mtunegeneric -marchx86-64 -auxbase hello -version -fstack-protector-strong -Wformat -Wformat-security -o /tmp/cc88JZ4W.s 这是gcc编译器的另一个命令行选项示例。它的作用是将预处理过的文件hello.i进行进一步编译生成汇编语言文件hello.s。下面是每个选项的解释 -s: 生成汇编语言文件。-o hello.s: 指定汇编语言输出文件名为hello.s。-v: 详细输出编译器执行的信息。-mtunegeneric: 指定编译时针对通用处理器进行优化。-marchx86-64: 指定生成适用于x86-64架构的代码。-fpreprocessed hello.i: 指定预处理过的文件hello.i作为输入文件。-dumpbase hello.i: 指定基础输入文件为hello.i。-auxbase hello: 指定辅助的基本文件名为hello。-version: 打印版本信息。-fstack-protector-strong: 生成强制堆栈保护的代码以防止缓冲区溢出漏洞。-Wformat -Wformat-security: 开启有关格式化字符串的警告。-o /tmp/cc88JZ4W.s: 指定汇编语言输出文件的路径为/tmp/cc88JZ4W.s。 gcc编译汇编 sudo gcc -c hello.s -o hello.o -v gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12)  COLLECT_GCC_OPTIONS-c -o hello.o -v -mtunegeneric -marchx86-64  as -v --64 -o hello.o hello.s as -v --64 -o hello.o hello.s gcc在把汇编文件编译为重定位文件时使用的是as这个应用程序   gcc链接可重定位文件 ld连接器 collect2封装了ld连接器 COLLECT_GCC_OPTIONS-o hello -v -mtunegeneric -marchx86-64  /usr/lib/gcc/x86_64-linux-gnu/5/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so -plugin-opt/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper -plugin-opt-fresolution/tmp/cc9OI5DQ.res -plugin-opt-pass-through-lgcc -plugin-opt-pass-through-lgcc_s -plugin-opt-pass-through-lc -plugin-opt-pass-through-lgcc -plugin-opt-pass-through-lgcc_s --sysroot/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-stylegnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o hello /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. hello.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/5/crtend.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o (封装了ld程序) 静态链接 COLLECT_GCC_OPTIONS-o hello_static -v -static -mtunegeneric -marchx86-64  /usr/lib/gcc/x86_64-linux-gnu/5/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/5/liblto_plugin.so -plugin-opt/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper -plugin-opt-fresolution/tmp/ccqTGMxr.res -plugin-opt-pass-through-lgcc -plugin-opt-pass-through-lgcc_eh -plugin-opt-pass-through-lc --sysroot/ --build-id -m elf_x86_64 --hash-stylegnu --as-needed -static -z relro -o hello_static /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbeginT.o -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. hello.o --start-group -lgcc -lgcc_eh -lc --end-group /usr/lib/gcc/x86_64-linux-gnu/5/crtend.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o 输入ls -lh 可以看到动态编译和静态编译的两个文件大小区别
http://wiki.neutronadmin.com/news/375055/

相关文章:

  • wordpress网站静态化网页设计实训总结600字
  • 东莞集团网站建设规定网页设计素材文字
  • 自己创建网站赚钱修改wordpress图片外链
  • 深圳市网站建设外包公司流量网站应该怎么做
  • 温州网站建设首选龙诚互联什么是网络营销啊
  • 上海私人网站建设汉阴网站建设
  • 厦门建站价格百度怎么推广自己的作品
  • 专做h5的公司网站自我介绍ppt模板免费下载
  • 网站开发公司排名前十企业品牌推广价格
  • 电子商务网站建设课程总结可信的网站建设
  • 桂阳局网站建设方案建筑网站步骤
  • 革吉网站建设学院网站建设工作会议
  • 手机百度 网站提交建设通官方网站下载
  • 大一网页设计电商网站作业做网站分几种
  • 做游戏出租的网站兰州装修公司排名前十强
  • 个人网站模板吧生产公司简介模板
  • dede网站如何换logowordpress如何设置邮箱
  • 域名网站建设教程网页布局是指什么
  • pc端网站怎么做自适应深圳网站建设公司排行
  • 如何快速推广网站WordPress怎么编制手机页面
  • 龙岗网站设计案例如何做旅游网站推销
  • 寻找郑州网站建设公司wordpress视频教程下载地址
  • 注册了域名怎么做网站制作图片库
  • 手机软件下载网站推荐小白的博客 wordpress
  • wordpress 3.9 漏洞企业网站为什么做优化
  • 提供做网站公司php网站说明
  • 盐城网站建设渠道合作如何创建电商平台
  • 公司网站开发与维护活动页面设计模板
  • 网盘网站建设免费seo网站优化
  • 国家查企业的网站关键词搜索引擎又称为