导航:首页 > 源码编译 > 编译链接的程序

编译链接的程序

发布时间:2022-11-16 12:19:32

1. 用GCC编译链接程序时,怎样才能不包含源文件

编译必须带源文件,链接的时候不需要。
编译的过程就是把源文件变成二进制文件(.o文件),链接的过程是把这些中间文件变成可执行和库文件。

2. c语言中的编辑,编译,连接,运行分别是什么意思

1、编辑:编写代码,制作C语言的源文件。

2、编译:是由编译程序将C语言源文件转换成二进制中间文件,对文件内部的语法语义做处理,如果编译出错,无法进行后续动作。

3、链接:将编译中生成的中间文件组合成二进制可执知行文件,这一步会对文件之间的关联做检查,如果出错,将不会生成可执行文件,也就无法执行。

4、执行:运行可执行文件,这一步道是编写代码的最终目的。

(2)编译链接的程序扩展阅读:

DOS命令通常分为三类:内部命令、外部命令和批处理命令。

1、内部命令:

其包含在命令解释程序COMMAND.COM中,一旦启动DOS,这些命令就被调入内存,只要在DOS系统提示符下输入这些命令,就可立即执行。

2、外部命令:

其以文件的形式存储在系统盘上,所带扩展名为COM和EXE。DOS启动时,它们并没有被调入内存,执行前必须从系统盘读进内存。因此输入外部命令时,要了解该命令是否在当前盘上,不然DOS无法找到它们。

3、批处理命令:

实际上是个文件,该文件包含多条命令,当用户键入批处理文件名时,DOS将顺序执行其中的各条命令。注意,批处理命令必须用“.BAT”作为扩展名。

C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。在表达式方面较其它程序语言更为简洁,如自加、自减、逗号运算和三目运算使表达式更为简单。

当多种不同运算组成一个运算表达式,即一个运算式中出现多种运算符时,运算的优先顺序和结合规则就会显得十分重要。

网络-运行命令

网络-C语言

3. 汇编语言的那个编译链接 的详细过程 每一步骤

LZ请跟着我的操作走
1.将写好的汇编代码保存为1.asm
2.将1.asm复制到c盘下
3.点开始(即左下标那个windows图标),找到运行,或(附件中的命令提示符)
4.找到运行后,输入cmd

command
5.进入后输入cd
c:\
6.输入masm
1;(1后面有分号),然后回车
7.输入link
1;然后回车
8.cls清屏然后回车
9.输入1.exe,然后回车
10.完成
至于怎么debug
步骤:
1-8同上
9.输入debug
1.exe,然后回车
10.完成
至于debug
中的
'r'
'd'
't'
自己上网找大把
我的系统是win
7,
你的masm

link
debug
要放在C:\Windows文件夹
PS:
若有不明白的地方。

4. 宏和函数的区别以及C语言的编译链接过程

  1. 宏在编译之前,需要进行预处理,将宏直接提换成宏定义的代码,是直接替换,也就是说,在预处理之后,你再看代码,发现宏定义已经被替换过来了,你看到是你定义之后的那一串代码。

    而函数,在编译之后,有一系列调用函数的过程,比如,传参,压栈等,这部分是编译器所做的。

  2. C 语言编译链接过程:

    test.c(原始代码) --> 预处理 --> test.i(经过预处理的)--> 编译 --> test.s(汇编代码)--> 汇编 --> test.o(目标文件,其实这部分已经是单个文件的完整二进制文件了,只是还不能执行,如果不懂这句话,可以再问我,其实这部分知识,平时也很少遇到) --> 链接 --> test (可执行文件,比如一个程序由3个代码文件共同生成,那么就会有3个.o格式目标文件,链接是把多个目标文件真正的联系在一起,比如a.o 中使用了 b.o中的一个函数,那么它们两个之间的地址是如何确定的(同理,可引申到使用函数库的问题,使用printf函数,也是需要链接器进行确定printf函数地址,才能知道如何调用。)这个就是链接器的作用)

5. 如何理解程序的编译,链接,加载等各个过程

编译是将高级程序语言(c,c++,c#等)转换成汇编语言,并且将变量翻译成寄存器
链接是将多个编译过的文件组合成一个文件,并且加入程序调用的库函数等所需的其他资源
加载是将以上处理过的后生成的指令(二进制码)在执行前加载到内存中,并提供地址翻译。

6. C语言中编译程序和连接程序的作用和原理是什么关键是原理,越详细越好,谢了~

详细了你也不一定能理解,你对底层的了解程度如何?

简单的来说编译就是生成语言无关的obj文件,连接就是将所有的obj文件连接起来,查找里面的符号按照COFF文件的标准生成dll或EXE。

7. 如何编译静态链接的程序,通过./configure 把参数-static传入Makefile。

./configure LDFLAGS=-static

8. 程序的编译链接过程

stdio.h 只是一个函数声明的头文件, 实现在已经编译好的库文件中,一般情况 IDE 会自动连接标准库,不需要你管。

9. c语言里面的编译和链接是怎么回事

C/C++语言的完整编译过程是

一、预编译

处理#define #if #include这类#开头的语句,这些称为预编译指令。这个过程中会把.h文件和.c/.cpp文件组合成最终交给compile过程的原文件。这个原文件是不包含任何#开头的语句的。所有#define定义的宏也会被替换。

二、编译
把上面那个原文件编译成.o或者VC里是.obj文件。这个文件保存了机器码化的函数、函数的描述、全局变量的描述、乃至段的描述等等。

三、连接
把可执行程序需要的所有的编译过程产生的.o或者.obj文件组合到一起。(这里也包括.lib文件,.lib文件件本质上就是打包的.obj文件集合)。另外连接过程还会组合一些其他数据,比如资源、可执行文件头等等。

10. 如何理解程序的编译,链接,加载等各个过程

编译是将高级程序语言(c,c++,c#等)转换成汇编语言,并且将变量翻译成寄存器
链接是将多个编译过的文件组合成一个文件,并且加入程序调用的库函数等所需的其他资源
加载是将以上处理过的后生成的指令(二进制码)在执行前加载到内存中,并提供地址翻译。

阅读全文

与编译链接的程序相关的资料

热点内容
北京文件夹加密多少钱 浏览:669
什么是车鉴定app 浏览:64
战地一私人服务器怎么买 浏览:497
陈天程序员 浏览:833
编译原理如何运用到编程中 浏览:17
linux选择数据库 浏览:376
php两个数组差集 浏览:978
迷你pdf阅读器下载 浏览:433
做一个python小程序 浏览:655
pythonossystem和 浏览:645
win2008如何搭建ftp服务器 浏览:53
安卓手机为什么不翻牌 浏览:546
删除pkpm及相关文件夹 浏览:481
房贷解压银行内部流程 浏览:734
安卓手机如何更改语音 浏览:601
android红包实现 浏览:734
苹果的nvme为什么安卓不用 浏览:32
python输入单词统计个数 浏览:998
脚本软件提取源码 浏览:281
程序员能给自己的微信钱包刷钱么 浏览:73