转载:https://www.cnblogs.com/qingyuanjushi/p/5722884.html
在Windows 7 64bit和Visual Studio 2013下生成64位程序。
- 新建一个Visual Studio Win32 Console项目,命名为WinTestX64.
代码如下
#include "stdafx.h"
#include <iostream>
using namespace std;
#define PRINT(a) cout << #a << ":" << a << endl
void printSize(char aInFunc[]){
PRINT(sizeof(aInFunc));
}
int _tmain(int argc, _TCHAR* argv[])
{
char a[] = "abc";
char *b = "abc";
PRINT(sizeof(a));
PRINT(sizeof(b));
printSize(a);
getchar();
return 0;
}
- 在工具栏上单击"Solution Platforms",选择"Configuration Manager...",然后在"Active solution platform"中选择"<New...>"
- 在"New Solution Platform"对话框中选择"x64"平台。单击确定。

- 回到IDE界面上了,注意到现在的平台已经是x64了。

- 编译,链接,分别生成32位与64位程序。
- 按F5,开始调试,在output对话框中,我们可以看到32位和64位程序加载的dll不同。
32位程序从SysWOW64中加载dll。

而64位程序从System32中加载dll。

分别用32bit和64bit的配置编译, 看看结果有何区别.

浙公网安备 33010602011771号