c++ 解释还是编译

来源:百度知道 编辑:UC知道 时间:2024/06/16 11:21:49
高级语言编写的程序每次运行都要提取源程序出来变成机器代码那么叫解释
编译则是吧程序编译成机器码存放到电脑里

是这样的吗?
那C++是哪一种

还有编译好的机器码直接放在另外一种机器上,多数都是不能识别或容易出错的对吗
还有负责编译工作的事什么东西?

可以用VC++这样的软件编译
但是如果吧一个c++代码组成的程序直接放到电脑上电脑是靠什么东西认识和编译这些代码的呢?

编译是在程序运行之前进行的,词法分析-语法分析-中间代码-目标代码-[优化] 生成了目标代码,windows下通常是exe文件
解释是在程序运行时进行的,运行之前没有目标代码的生成。所以速度比较慢C++是编译的,matlab是单句解释运行的
java是生成了字节码,算是中间代码,然后在java虚拟机上运行

源代码通过编译 链接 生成目标代码
等你学过 编译原理 这么课程你会了解的多些

1.你对解释和编译的理解大致正确.
2.C++属于编译型语言
3.对,至少对于VC来讲是这样.你得把程序中用到的动态库一起打包,以防万一.另外,C++的可移植性并不强,但在同等规模,同等类型的系统上不用太在意可移植性.
4.负责编译工作的是IDE..如VC6 VS7 8 9 C++ bulder之类的..
5.电脑并不会主动认识C++的代码,不过,庆幸的是,C++属于编译型的,所以没有特别的环境要求.
关于编译: 如果不用IDE,也至少得提供编译库.环境只能保证包含机器码,但不能保证有机器码到高级语言间的解析字典.
你可以体会一下,在Red hat系统中,用makefile编译一下C程序,也许会更深一步的了解.

c++ 和C属于编译型语言,Java属于解释型语言。。。。但是现在来说编译和解释分的并不是十分绝对的了。。。

软件,你学过汇编,机器语言后就会知道,原理其实是数字电路的