VC 6.0 如何查看编译后生成的代码

VC 6.0 如何查看编译后生成的代码

是一条语句一条语句的翻译

一个编译器包括词法分析、语法分析、语义分析、中间代码的生成、目标代码的生成、代码优化等

其中词法分析的功能是将一个*.c文件读到内存中,然后根据这一大串字符串判断并分割出关键字、字母、标识符等等;
语法分析的功能是根据标准c语言的语法判断这个*.c文件是否存在语法错误;
语义分析的功能是根据标准c语言的语法确定程序的含义;
中间代码的生成是根据源程序生成相应的过度程序;
目标代码的生成是根据中间代码生成相应目标代码(如汇编,vc最终生成的是可执行文件:*.exe);
代码优化是根据生成的目标代码进行优化,比如减少循环次数等等

你所提出的问题,其关键步骤就是语义分析,一般用递归的方法一个语句一个语句的编译

个人意见,仅供参考
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-01-14
vc6.0下你点击编译命令后它会提示你是否建立工程,然后你就一路点下去了,它就帮你建了一个工程,然后编译链接再运行。
vc7环境下不会自动生成工程(或称项目、解决方案),你需要首先建立一个c++下空的win32控制台项目,然后在里面添加或新建.cpp及.h等文件,想编译某个.cpp文件就选择菜单里的编译,想运行就点击运行的那个键,它会自动编译所有源文件然后链接生成exe
第2个回答  2011-01-14
用反编译软件本回答被提问者采纳

用VC6.0编译完程序之后运行结果哪里看?
上面的状态栏里有个“!”,按这个!运行程序,然后出现一个黑框,在黑框里看运行结果!

用vc6.0编译出的exe如何提取源代码?
打开VC6,File——Open Workspace...(就是打开项目工程),在对话框里找到你那工程文件夹,看看有没有dsw的文件,打开就可以了,文件再多也没关系,程序文件和头文件都分好的,说白了就是教你怎么用VC6打开一个工程,更简单的话直接双击dsw文件,VC6自动开工程...其实不一定要有dsw,有源码直接去...

在C语言编译后生成的*.exe文件在那放着,c++环境
C++编译后的EXE文件在DEBUG目录中。

C语言编写好代码后,怎么编译,最后生成可执行文件?
1、打开c语言编辑工具,在工具中写入程序的源代码。2、完成以后,点击编译后点击组建,然后点击执行。3、执行完程序,点击回车按钮选项。4、点击文件另存为把文件存到你能够找到的文件夹中。5、打开保存在桌面的文件夹,里面有有一个 Bebug 的文件夹。6、打开 Bebug 的文件夹,有一个以.exe为后缀...

在c++二进制文件中怎么找到自己的代码?
如果你用的是VC 6.0之类的编译器,当你编译完成后,会在一个名叫Debug的文件夹下看到很多文件,二进制文件就是那个以.obj为后缀的文件。其实这个二进制文件已经是一个可执行的目标程序(计算机只能识别二进制的)。据我知道,为了保护源代码,一般上从目标程序是看不出来源代码的。目标程序与库函数和...

VC6.0编译器MFC程序中怎样查看一个函数是在那个实现的,不是要声明是...
如果是系统函数,大部分MFC函数都有开放源码在VC安装目录下,这个是不能直接从代码“传导”过去的,你可以通过两种方法来找到:(当然,并不是所有系统函数都开源)F5运行程序,F9设置断点,F11进入函数。在调试过程中通过进入调试查看到 在VC安装目录下搜索。比如VC6中,你可以通过界面上的搜索按钮,在C...

vc++6.0写好代码之后如何生成EXE文件。
然后进行编译、链接,没有错误也没有警告的话,就可以运行了。运行成功后就可以进行exe文件的生成了。点击工程->设置。在窗口的左上角有一个设置,点击下拉菜单,选择Win32 Release。然后点击“确定”。点击组建->批组建。保留Win32 Release 前面的对勾,去掉Win32 Debug前面的对勾。然后点击“创建”。...

(VC6.0)1.输入源程序后,如何编译该程序? 2.如何链接程序生成可执行文件...
1单击主菜单栏中的build编译 2在得到后缀为obj的目标程序后选择build菜单下的build选项,表示要求连接并建立一个可执行文件。3得到可执行文件后选择build菜单下!execute文件名.exe,执行文件。

visual c++ 6.0下怎么查看代码量啊
然后将文件名的后缀(.txt)改为(.cpp),双击即可用vc++打开。通常调试只要选择主菜单的Build|Build *.exe来编译你的项目(也可以按功能键F7)。如果有错误,按F4即可查看错误所在位置以及出错原因,改正后再次编译连接,最后即可选择Build|Execute *.exe(或者Ctrl+F5)运行。至于编写代码,那要逐渐熟练...

VC6.0编译环境下遍历文件夹的源代码
include <windows.h> BOOL IsRoot(LPCTSTR lpszPath){ TCHAR szRoot[4];wsprintf(szRoot, "%c:\\\\", lpszPath[0]);return (lstrcmp(szRoot, lpszPath) == 0);} void FindInAll(::LPCTSTR lpszPath){TCHAR szFind[MAX_PATH];lstrcpy(szFind, lpszPath);if (!IsRoot(szFind))lstrcat...

相似回答