C/C++之cpp变exe
C/C++之cpp变exe
上节我们讲了C/C++的命名空间。
本节我们来介绍如何把源代码转换成软件。也就是标题所说的cpp变exe。
大家在使用vs等IDE的时候是不是发现很方便,只要写完源码,源码没错误的情况下,点一下生成就会得到可执行文件(exe)。
但是大家有没有想过其中的原理是怎么样的呢。所以本节通过这一点来展开做介绍。
点击生成解决方案就可以快速获得可执行文件,细心的同学可能会发现项目的Debug或者Release文件夹中,会有需多奇怪后缀的文件。例如我拿上节的方案Debug目录中的文件做例子。
其中,只需要了解.obj文件,也就是二进制程序即可。其实在鼠标左键点击的“生成解决方案背后”一共经历了四个处理阶段。具体的过程使用流程图来表示:
在原来没有集成开发环境IDE的时候,写的代码都是通过命令行进行编译。- 首先第一次处理,预处理阶段,例如上一节的代码,预处理只是把头文件的内容复制到源程序中。但是其实过程并没有那么简单,所以得到的代码还是源程序。
- 如果预处理没有错误就进入第二个阶段,编译阶段,把我们的源程序转化成汇编程序(简单介绍一下汇编语言,是一种低级语言,而我们现在所学的C/C++是高级语言),但是汇编语言也不是计算机所认识的语言。
- 第二步得到的汇编程序再进行第三次出率,将其汇编,生成一个二进制程序.obj,但是该程序还是不能直接运行。
- 第四步,将C++的库与二进制程序链接 (利用C++内部的工具将代码进行拼装) 起来,才能得到可执行文件.exe。
本节的内容到此结束了,大家了解一下即可。下一节讲一下程序的注释。
C/C++之cpp变exe相关推荐
- 组装电脑中毒目录变exe应用程序文件恢复方案
目录变exe应用程序是电脑中毒了,这种病毒会删除硬盘里所有文件,然后创建一个同名的exe文件,伪装成原来的文件.组装电脑中毒目录变exe应用程序文件恢复方案然后按下面的步骤恢复即可. 目录变exe 工 ...
- 组装电脑中毒文件夹变exe文件寻回办法
文件夹变exe是电脑中毒了,这种病毒会删除硬盘里所有文件,然后创建一个同名的exe文件,伪装成原来的文件.组装电脑中毒文件夹变exe文件寻回办法然后按下面的步骤恢复即可. 工具/软件:AornData ...
- 中了exe病毒文件夹变exe应用程序解决方法
文件夹变exe应用程序是一种恶意病毒,专门删除电脑中有用的文件,把自己伪装成一个正常的文件.中了exe病毒文件夹变exe应用程序解决方法恢复步骤如下: 文件夹变exe应用程序是一种恶意病毒,专门删除电 ...
- 台式电脑中病毒了文件夹变exe应用程序文件找到法子
文件夹变exe应用程序是电脑中毒了,这种病毒会删除硬盘里所有文件,然后创建一个同名的exe文件,伪装成原来的文件.台式电脑中病毒了文件夹变exe应用程序文件找到法子然后按下面的步骤恢复即可. 工具/软 ...
- 学习机?原来是中了文件夹变exe文件的病毒Trojan-Dropper.Win32.Flystud.yo
学习机?原来是中了文件夹变exe文件的病毒Trojan-Dropper.Win32.Flystud.yo endurer 原创 2009-08-23 第1版 一位朋友的学习机最近了,把学习机接到电脑上 ...
- 一体机中病毒了文件夹变exe应用程序资料找到方法
文件夹变exe应用程序是电脑中毒了,这种病毒会删除硬盘里所有文件,然后创建一个同名的exe文件,伪装成原来的文件.一体机中病毒了文件夹变exe应用程序资料找到方法然后按下面的步骤恢复即可. 工具/软件 ...
- U盘文件夹变exe的win10环境下纯手工解决方法(无需任何软件)
U盘文件夹变exe的win10环境下纯手工解决方法(无需任何软件) 把U盘插入装有win10系统的电脑 打开U盘目录(这里假设U盘目录是G:) 选中变成exe的文件,删除(放心,这里的exe是一个几k ...
- 遭遇Trojan.Alipop,microinfo.dll,gofwk.pic,game.dll,qpjmy.exe,nnaa.exe,SafeDrv.exe等2
在分析log的过程中,下载DrWeb CureIt!,重启电脑想进安全模式查杀,结果在启动过程中蓝屏,看来是被恶意程序破坏了,只好拔出网线,在正常模式下查杀病毒. 从pe_xscan的log上看,朋友 ...
- Whisper.cpp 编译使用
Whisper.cpp 编译使用 whisper.cpp 是牛人 ggerganov 对 openai 的 whisper 语音识别模型用 C++ 重新实现的项目,开源在 github 上,具有轻量. ...
最新文章
- ubuntu16.04下下载baiduyun大文件
- how to write a php framework,怎么一步步编写简单的PHP的Framework(十四)
- P4494-[HAOI2018]反色游戏【圆方树】
- 前端学习(3048):vue+element今日头条管理-分页布局
- 13个超棒的代码资源网站推荐
- matplotlib常用函数(更新中)
- Linux学习-逻辑滚动条管理员 (Logical Volume Manager)
- 幕客网学习摘要记录1
- aut0cad2010卸载工具_win10系统cad卸载不干净怎么办?win10怎么把cad卸载干净
- 吴伯凡-认知方法论-如何犯一个“正确”的错误
- kafka消息堆积及分区不均匀的解决方案
- llS 10.0详细错误-404.0 - NotFound
- 如何做好谷牛期权短线交易
- 拼音检索VS五笔检索---Javascript实现
- 高难度c语言编程题,高难度脑筋急转弯题目合集带答案
- 网络之mac地址和ip地址
- 用python自动发微博
- 存在即合理-开发语言
- Linux应用(二)多进程编程
- 许昌高中高考2021成绩查询,许昌高中成绩排名2021,许昌中考分数线排行榜
热门文章
- 【解决方案】“博物馆热”背后,如何建设安防视频监控体系保障文物安全?
- html5画图论文结束语,基于HTML5 Canvas画图软件的设计与实现.doc
- html5视频标签video画中画几个API
- 计算机毕业设计Java国漫论坛网站(源码+系统+mysql数据库+Lw文档)
- Awesome Adb——一份超全超详细的 ADB 用法大全【转】
- 关于51单片机驱动DS18B20代码的感想
- Windows10怎么设置双屏?双屏显示设置有哪些?
- 加速度计和陀螺仪设备
- 【最新技术早知道】PCIe Gen5 还没用上,Gen6 就来了?PCIe 6.0 系列文章之:《PCIe 6.0,到底 6 在哪?》
- win10豆沙绿护眼色