Visual Studio 2008 下生成C/C++ 汇编代码
在项目属性页 --> 配置属性 --> C/C++ --> 输出文件里面,将汇编输出的下拉列表从无列表选择为你需要汇编输出的内容,比如“仅列出程序集(/FA)”,如图1-1,图1-2:
图1-1
图1-2
---------------------------------------------------------------------------------------------------------
图1-3是未修改之前Debug目录下的文件:
图1-3
图1-4是修改之后Debug目录下的文件,注意多了两个汇编文件
图1-4
图1-5是汇编文件HelloWorld.asm的具体内容
图1-5
这样,当你搞不懂编译器到底做了些什么,或者某块内存中到底是什么东西,你可以来查看汇编代码。
比如int i = 5;
int a = (++ i) + (++ i) + (++ i) ;
a是等于22还是24,看你编译器了。o(∩_∩)o...
另外,解决运行时窗口一闪而过的办法是:按Ctrl+F5。
或许这些都是很菜的问题,或许是我平时对VS接触的不多,不过遇到问题解决问题,心情大好。
相关文档:
前段时间刚参加了n多公司的C/C++软件工程师的面试,有国企,外企,私企(moto,飞思卡尔,港湾,中国卫星XXX(这个牛))等等等等。感受感想颇多,近日终于空闲,在此表述一下。
本人基本条件:3年开发经验,2year+ Windows development experence,1year+ Linux experence. 熟悉C,C++,MFC/SDK/API,MiniG ......
assert
函数名: assert
功 能: 测试一个条件并可能使程序终止
用 法: void assert(int test);
程序例:
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
struct ITEM {
int&n ......
/* =========================================================================== */
/* Project: s3c44b0_lib & ......
├—WINDOWS
│ ├—system32(存放Windows的系统文件和硬件驱动程序)
│ │ ├—config(用户配置信息和密码信息)
│ │ │ └—systemprofile(系统配置信息,用于恢复系统)
│ │ ├—drivers(用来存放硬件驱动文件,不建议删除)
│ │ ├—spool(用来存放系统打印文件。 ......
以前学生时代的时候就有遇到过这个问题,不过没去深究;
现在也是老问题,其实很简单,就是为了防止#include两个头文件的时候,把第一个头文件的最后一行和 第二个头文件的第一行拼接成一行;呵呵,其实很多问题都很简单,而且很隐蔽,只是我们很多时候没去注意! ......