鱼C论坛

 找回密码
 立即注册
查看: 7095|回复: 3

vscode怎么切换32位和64位编译环境?

[复制链接]
发表于 2023-4-21 10:51:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
如图所示,右下角好像一直有Win32,编译结果一直是4。64下编译long字节长度应该为8的,百度了修改环境也还是不行,对vscode配置不是很熟悉,请求指点
个人使用的编译器是mingw

屏幕截图 2023-04-21 104746.png
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-4-21 11:51:37 | 显示全部楼层
在 Visual Studio Code 中,你可以通过修改 tasks.json 配置文件来切换 32 位和 64 位编译环境。这里是一个基本步骤:

1. 首先,确保你已经安装了 32 位和 64 位的 MinGW 编译器,并且它们已经被添加到系统环境变量 PATH 中。

2. 在 VSCode 中打开你的项目文件夹。

3. 点击左侧边栏的 "终端" 图标,然后点击 "运行任务"。如果你还没有设置任何任务,点击 "创建 tasks.json 文件"。

4. 在打开的 tasks.json 文件中,添加两个任务,分别用于 32 位和 64 位编译环境。你可以使用以下模板:

  1. {
  2.     "version": "2.0.0",
  3.     "tasks": [
  4.         {
  5.             "label": "build (32-bit)",
  6.             "type": "shell",
  7.             "command": "gcc",
  8.             "args": [
  9.                 "-m32",
  10.                 "${file}",
  11.                 "-o",
  12.                 "${fileDirname}/${fileBasenameNoExtension}_32.exe"
  13.             ],
  14.             "group": {
  15.                 "kind": "build",
  16.                 "isDefault": true
  17.             },
  18.             "problemMatcher": "$gcc"
  19.         },
  20.         {
  21.             "label": "build (64-bit)",
  22.             "type": "shell",
  23.             "command": "gcc",
  24.             "args": [
  25.                 "-m64",
  26.                 "${file}",
  27.                 "-o",
  28.                 "${fileDirname}/${fileBasenameNoExtension}_64.exe"
  29.             ],
  30.             "group": {
  31.                 "kind": "build",
  32.                 "isDefault": false
  33.             },
  34.             "problemMatcher": "$gcc"
  35.         }
  36.     ]
  37. }
复制代码


5. 保存 tasks.json 文件并关闭。

6. 当你需要切换编译环境时,只需点击左侧边栏的 "终端" 图标,然后点击 "运行任务"。在弹出的任务列表中,选择 "build (32-bit)" 或 "build (64-bit)",即可编译对应环境下的可执行文件。

7. 生成的可执行文件将被放置在源文件相同的文件夹下,并带有 "_32.exe" 或 "_64.exe" 后缀,以表明它们分别是 32 位和 64 位版本。

这样,你就可以根据需要在 VSCode 中轻松切换 32 位和 64 位编译环境了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-22 10:02:02 | 显示全部楼层
根据您提供的截图信息,右下角的显示 Win32 是指当前所使用的编译器工具链是 32 位的。而对于 long 类型在 64 位编译环境下的长度问题,可能是因为您的编译器默认将 long 类型定义为 32 位的,而不是 64 位的。

如果您使用的是 MinGW-w64 作为编译器,可以通过在编译时指定 -m64 选项来进行 64 位编译,如下所示:
  1. g++ -m64 main.cpp -o main
复制代码

如果您使用的是旧版的 MinGW,则可能需要使用另一个名为 mingw-w64 的开源项目,该项目支持在 64 位 Windows 平台下进行 C/C++ 编译。您可以尝试安装该项目并使用其中的 x86_64-w64-mingw32-g++.exe 编译器来进行 64 位编译。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-10-12 21:49:02 | 显示全部楼层
遇到一样的问题,全网都没搜到答案,mingw64不是支持32位编译的么
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-4 11:59

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表