❶ 为什么编译后执行文件很大
关于程序源代码编译之后,可执行文件很大这个问题,根据我的编程经验,不论是在 WINDOWS 系统下面、还是在 UNIX/Linux 系统下面,假设在你编写的源代码没有任何错误、且保证可以运行出正确结果的前提下,你必须要仔细查阅关于源代码编译选项的一些资料。因为使用编译器在编译源程序的时候,加上不同的编译选项对源代码进行编译,实际上对可执行程序的影响还是很大的。
例如:如果在编译的时候加上优化选项,那么肯定要比你不加优化选项,其可执行程序的运行速度要快得多;再例如:如果你想对源代码进行底层调试,那么在编译的时候就必须要加上调试选项,等等。
❷ 一个程序通过了编译,并且得到了输出结果,这个结果是否一定正确为什么
不一定,好比如说你定义了一个有10个元素的数组,然后将另一个有11个元素的数组逐一赋值给它,程序中控制它正确赋值,最后输出第一个数组各元素的值,但是虽然通过了编译,也输出了结果,但是你还是没能把11个元素的都赋值过去,这就是达不到所想的赋值,当然是不正确的了。还有其他一些情况,当你的编程经历越多时就会碰到的了
❸ c程序编译后生成什么,连接后生成可执行程序
c程序编译后生成目标文件,连接后生成可执行程序。C语言是世界上最流行、使用最广泛的面向过程的高级程序设计语言。C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的。
❹ 编译程序和解释程序有何区别
编译程序能生成目标程序,而解释程序不能。
❺ c语言编译后的是什么东西
C/C++编译连接后,生成的exe文件都是二进制的机器码
快和慢的简单概念就是做同样的一件事情,一个用时少,一个用时多
也就是一个用的指令周期少,一个用的指令周期多
❻ C语言程序编译后产生哪些类型的文件这些文件的作用是什么
不同的系统,产生的文件不一样;
win:
->.obj目标文件
->.obj目标文件->.exe可执行文件
->.rc
。。。。
❼ 编译程序和解释程序的区别
编译程序和解释程序的区别是:
1、编译是将源程序翻译成可执行的目标代码;解释程序不产生目标代码。
2、解释程序可跨平台使用;编译程序跨平台性不好。
3、解释程序可以随时修改,立刻生效;编译程序不行。
4、解释程序运行效率低;编译程序执行速度快。
编译是将源程序翻译成可执行的目标代码,翻译没斗与执行是分开的;而解释是对源程序的翻译与执行一次性完成,不生成可存储的目标代码。这只是表象,二者背后的最大区别是:对解释执行而言,程序运行时的控制权在解释器而不在用户程序;对编译执行而言,运行时的控制权在用户程序。
解释具有良好的动态特性和可移植性,比如在解释执行时可以动态改变变量的类型、对程序进行修改以及在程序中插入良好的调试诊断信息等,而将解释器移植到不同的系统上,则程序不用改动就可以在移植了解释器的系统上运行。
同时解释器也有很大的缺点,比如执行效率低,占用空间大,因为不仅要给用户程序分配空间,念察败解释器本身也占用了宝贵的系统资源。
编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行仔颤时计算机可以直接以机器语言来运行此程序,速度很快。
而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的。
❽ java程序经编译后会产生什么
产生:byte codex0dx0ax0dx0aJava字节码是Java源文件编译产生的中间文件x0dx0ajava虚拟机是可运行java字节码的假想计算机 java的跨平台性也是相对与其他编程语言而言的x0dx0a先介绍一下c语言的编译过程吧先是C语言源程序 也就是c的文件经过C编译程序编译后,生成windows可执行文件exe文件,然后在windows中执行。再介绍java的编译过程先是java源程序扩展名为java的文件,由java编译程序将java字节码文件,就是class文件然后在java虚拟机中执行。机器码是由CPU来执行的。Java编译后是字节码, 电脑只能运行机器码。Java在运行的时候把字节码变成机器码。C/C++在编译的时候直接编译成机器码。