读书人

VS2008中Dubug模式和Release模式中的位

发布时间: 2012-05-29 12:16:00 作者: rapoo

VS2008中Dubug模式和Release模式中的位移问题
#include "stdafx.h"
#include <iostream>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
int a = 0x12345678;
int b = a << 32;
cout<<hex;
cout<<b<<endl;
getchar();
}

Debug模式输出:12345678
Release模式输出:0

为什么?

[解决办法]
int 是带符号32位整数
你再移32位的话就超出了
你可以看看反汇编的代码

读书人网 >汇编语言

热点推荐