码迷,mamicode.com
首页 > 编程语言 > 详细

在vs 2015环境下,c语言和汇编混编操作简析(更新中......)

时间:2017-05-20 23:42:29      阅读:1724      评论:0      收藏:0      [点我收藏+]

标签:建立   动态   str   参数   lan   ref   开发   ges   logs   

在VS 2015环境下如何混编。

在新建工程里也会发现了很多问题,

应用程序类型分为:windows应用程序,控制台应用程序,DLL,静态库

技术分享

 

静态库:

静态库是指在我们的应用中,有一些公共代码是需要反复使用,就把这些代码编译为“库”文件;在链接步骤中,连接器将从库文件取得所需的代码,复制到生成的可执行文件中的这种库。

 

程序编译一般需经预处理、编译、汇编和链接几个步骤。静态库特点是可执行文件中包含了库代码的一份完整拷贝;缺点就是被多次使用就会有多份冗余拷贝。
静态库和动态库是两种共享程序代码的方式,它们的区别是:静态库在程序的链接阶段被复制到了程序中,和程序运行的时候没有关系;动态库在链接阶段没有被复制到程序中,而是程序在运行时由系统动态加载到内存中供程序调用。使用动态库的优点是系统只需载入一次动态库,不同的程序可以得到内存中相同的动态库的副本,因此节省了很多内存。
 

公用头文件以用于:ATL,MFC

技术分享

 

 

附加项:

空项目---选中了这个就是仅建立工程框架,不提供任何代码入口,需要手动添加源文件,头文件,这个就不要选了。

预编译头---把一个工程中的那一部分代码,预先编译好放在一个文件里(通常是以.pch为扩展名的),这个文件就称为预编译头文件这些预先编译好的代码可以是任何的C/C++代码。目的还是为了提高编译性能

 

导出符号---符号,是软件链接过程的用到的术语。符号是编译后obj文件之间对地址的引用,即对

函数和变量的地址的引用。应用于链接定位器。

编写代码时的符号到程序执行时的地址,要经过以下两个步骤:

1,链接:作用将分散在几个不同的目标文件中的符号进行解析,将符号解析成合并后的目标文件内部的内容(是在文件层次)

2,加载:作用是将文件按照其指明的方式,加载到物理内存(实际上是线性内存)中的某一个范围,这时符号就真正变成了地址,可以作为CALL指令的参数。

 

安全开发生命周期(SDL)检查---提高软件安全质量显著,《软件安全开发生命周期》作者:霍华德,李普纳

 

我没有学过C++,C#,对这些概念还是一无所知。看起来是好费劲。

 

可能很多人有和我一样的疑问。

 

在vs 2015环境下,c语言和汇编混编操作简析(更新中......)

标签:建立   动态   str   参数   lan   ref   开发   ges   logs   

原文地址:http://www.cnblogs.com/zhouhaocheng---yijianqinxin/p/6853143.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!