前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Vscode修改.exe文件生成位置

Vscode修改.exe文件生成位置

作者头像
攻城狮杰森
发布于 2022-06-03 04:14:52
发布于 2022-06-03 04:14:52
3.1K00
代码可运行
举报
文章被收录于专栏:技术集锦技术集锦
运行总次数:0
代码可运行

起因

今天在写C语言练习题时,发现Vscode工作区中出现了这样的情况:

程序运行产生的可执行文件和源码混在一起,作为一名强迫症,我怎能容忍它 “如此放肆”,特意查看了一波官方文档后终于找到了解决办法,这是对.exe文件位置重定向后的工作区文件目录:

怎么样?看起来是不是舒服多了?emmm……强迫症表示非常友好哦,下面就带大家看看我是如何解决的。

解决方法

文件建立

现在关闭Vscode,在桌面新建一个文件夹,命名随意,然后直接拖拽到Vscode图标处打开,这个文件就是我们的工作区

打开之后我们新建文件夹 Demo ,其下新建文件 Hello.c ,输入代码以便我们后续测试

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include <stdio.h>
int main()
{
    printf("Hello world");
    return 0;
}

点击左侧的调试按钮->创建launch.json文件

选择C++(GDB/LLDB)

选择gcc.exe-生成和调试活动文件

返回工作区文件目录,发现生成了.vscode文件夹,包含launch.jsontasks.json文件。简单了解下:tasks用于编译,launch用于执行编译后的文件,详情点击这里

重定向

为了方便大家修改,直接给出文件,修改位置有特殊标注。可以使用Ctrl+F组合键搜索,简单粗暴的可以直接删除生成的文件内容,复制下面对应文件操作。

tasks.json
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
    "tasks": [
        {//构建配置项
            "type":"shell",//任务类型,Vscode将预定义变量转义解析后直接传给command;shell->先打开shell再输入命令,因此args会经过shell再次解析
            "label": "C/C++: gcc.exe 生成活动文件",//任务名称
            "command": "C:\\Program Files\\mingw64\\bin\\gcc.exe",//本地编译器路径
            "args": [ //包含传给gcc命令的参数,用于实现特定功能
                "-g", //生成和调试有关的信息
                "${file}", //指定编译文件为当前文件
                "-o",//指定输出文件的路径和名称
                "${workspaceFolder}\\build\\${fileBasenameNoExtension}.exe"//修改.exe文件生成位置
            ],
            "options": {
                "cwd": "C:\\Program Files\\mingw64\\bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {//包含很多task,归为group
                "kind": "build",//表名该组任务类型是构建
                "isDefault": true//表明此任务为此组任务中的默认任务
            },
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

(1)将命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"${fileDirname}\\${fileBasenameNoExtension}.exe"

替换为

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"${workspaceFolder}\\build\\${fileBasenameNoExtension}.exe"

(2)将命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"cwd": "${fileDirname}"

替换为

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"cwd": "C:\\Program Files\\mingw64\\bin"
launch.json
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
    "version": "0.2.0",
    "configurations": [
        {//包含Debug配置
            "name": "gcc.exe - 生成和调试活动文件",//配置名称
            "type": "cppdbg", //配置类型,对应cpptools提供的调试功能
            "request": "launch", //请求配置类型,可以是启动/附加类型[launch/attach]
            "program": "${workspaceFolder}\\build\\${fileBasenameNoExtension}.exe",//待调试程序本地路径
            "args": [], //程序调试时传递给程序的命令行参数,设为空值
            "stopAtEntry": false,//改为true时程序暂停在程序入口位置,即main处打上断点
            "cwd": "${fileDirname}", //调试程序时的工作目录,这里表示源码目录
            "environment": [], //环境变量,设为空值
            "externalConsole": false, //true:cmd窗口; false:Vscode的内置终端输出
            "MIMode": "gdb", //指定连接的调试器,minGW64中调试程序->gdb
            "miDebuggerPath": "C:\\Program Files\\mingw64\\bin\\gdb.exe", //指定调试器所在路径,安装位置不同注意需要修改,间隔为\\
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: gcc.exe 生成活动文件" //调试开始前执行需要执行的任务,调试前要编译构建 名称要和tasks.json的label保持一致
        }
    ]
}

将命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",

替换为

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"program": "${workspaceFolder}\\build\\${fileBasenameNoExtension}.exe",
Code Runner

点击Edit in settings.json打开配置项,由于Code Runner中配置文件较多,我们只修改相关部分即可

(1)将命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt", 

替换为

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"c": "cd $dir && gcc $fileName -o $workspaceRoot/build/$fileNameWithoutExt && $workspaceRoot/build/$fileNameWithoutExt",

(2)将命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt", 

替换为

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"cpp": "cd $dir && g++ $fileName -o $workspaceRoot/build/$fileNameWithoutExt && $workspaceRoot/build/$fileNameWithoutExt", 

最后在工作区新建文件夹build,作为Test文件子项,确定好文件从属关系。

测试

完成,强迫症表示很su服~~

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-04-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Vscode 搭建 C / C++ 开发环境
相信多数计算机专业的同学都和我一样,步入大学首先要学习的就是 C 语言。那么,我想下面这个东西你一定见过
攻城狮杰森
2022/06/03
3.7K0
Vscode 搭建 C / C++ 开发环境
1.Win10+VsCode的C/CPP编译环境搭建
我是从开始学C++的时候就一直用的是visual studio,毕竟宇宙第一IDE,写和调试都是超级方便快捷,唯一的缺点可能就是启动慢一点。 之前电脑没有换固态之前,用过一段时间的codeblocks,换了之后就一直用VS了。 这次换vscode的原因主要是因为最近看到CPP的一些细节的东西的时候发现VS会完全忽略掉这些错误和警告。 印象最深的是关于函数返回局部指针变量的处理: eg:
和蔼的zhxing
2018/10/26
5.1K1
vscode基于Linux和Windows下c/c++的多文件编译与连接
cygwin64/home/xxx/.bash_profile ,末尾加上如下代码(后面vscodeMake.bat要用到环境变量"_T"):
战神伽罗
2019/07/24
3.1K0
Vscode如何配置C语言以及C++环境
这里选择MinGW-W64,他作为MinGW的升级版,效率更加高。 我这里就只用最新版本的离线下载,因为在线很慢,而且需要魔法,鉴于此,我选择离线下载。提供了新版和旧版本 的离线下载链接。 8.1.0 (旧版):链接:https://pan.baidu.com/s/1fWkRgl4wWUm-lK9-QMNVkw 提取码:iki0 新版下载(在线下载):https://github.com/Vuniverse0/mingwInstaller/releases 新版下载(离线下载):https://github.com/mmozeiko/build-gcc-mingw/releases
用户7272142
2023/10/11
7360
Vscode如何配置C语言以及C++环境
Visual Studio Code C++配置文件
以下三个文件放在 项目下 .vscode 文件夹中,内容从网络收集,经自己实践添加修改以备忘
Michael阿明
2022/01/07
1.3K0
vscode一键配置C/C++多个C及CPP文件编译与tasks.json和launch.json原理
搜了很多的教程,发现要么教程太老,给的配置信息里面有些参数都不能使用了,要么就是直接扔下自己的配置信息就没了,不知道咋来的,也不能拿过来直接用,让我这种小白无从下手,于是就摸索整理一下,帮助一下像我这样小白刚入手的小伙伴们。
全栈程序员站长
2022/11/01
8.1K1
vscode一键配置C/C++多个C及CPP文件编译与tasks.json和launch.json原理
vscode配置c语言环境
昨晚上一不小心给电脑整坏了,无奈之下就重装了系统。装完系统之后最麻烦的当然就是所有学习资料的安装恢复了。这样的工作对我这种记忆力不大好的“老年人”极度不友好!可是这又有什么办法呢,找到了我在云盘的学习资料后,当然是安装对应的工具了。我首先选择恢复的是vscode这款神器,我感觉这款轻量编辑器还是对我挺友好的,各个系统平台都可以使用,支持多种语言不说,还有丰富多样的各类插件免费使用。
是小北a
2022/03/30
1.4K0
vscode配置c语言环境
手把手教你 之 VScode配置C/C++编译环境
下载的文件:进入网站后不要点击 “Download Lasted Version”,往下滑,找到最新版的 “x86_64-posix-seh”。
小火柴棒
2021/05/19
8.4K0
手把手教你 之 VScode配置C/C++编译环境
Win Vscode C++
每次配都要网上找一遍太麻烦了。。。 MinGW下载地址 https://www.mingw-w64.org/downloads/
SakuraTears
2023/02/16
5830
VSCODE配置文件cc++
用户3519280
2023/07/08
2110
vscode gcc debug dbg gdb c cpp c++ cuckoo monitor
装cygwin 或者mingGW,装gcc工具链,并将cygwin的bin目录加入环境变量PATH中。
战神伽罗
2019/07/24
7490
整理:Visual Studio Code (vscode) 配置C、C++环境/编写运行C、C++(主要Windows、简要Linux)
2020年2月22日更新,又按照自己的帖子尝试了以下,感觉大的思路是没问题的啊,小改动用紫色的标记标注出来了,另外如评论区所说删去了部分旧版本的内容和图片,不知道为啥评论区的留言我都没收到邮件。。。
全栈程序员站长
2022/07/23
5.3K0
整理:Visual Studio Code (vscode) 配置C、C++环境/编写运行C、C++(主要Windows、简要Linux)
[原创]Windows上使用VS code写C++代码
如果在Windows上用过gdb编译过C++,一般都会对 MinGW有印象,Windows版的Eclipse for C++/Dev C++等都是基于MinGW来做的。于是我们在Windows上要想在VS code中用gdb的环境,同样需要先配置好MinGW的环境。
极客中心
2021/02/25
2.6K0
VSCode配置C/C++环境
在我们上面创建的下项目文件helloWorld.cpp可以编写相应的C/C++程序,这里以输出为例。
跋扈洋
2022/03/29
1.1K0
VSCode配置C/C++环境
vscode 配置C语言编译环境(完美版)_C语言环境安装
要在VSCode中配置C语言环境,我们首先可能要一个VSCode(废话),所以先下载安装一个VSCode; 然后肯定需要相关插件,因为VSCode不能直接拿来写C; 然后任何语言的程序在运行前都需要编译,那还需要一个编译器,很可惜VSCode插件里面不自带,所以要自己下载然后配置; 最后在VSCode中进行相关配置,就可以
全栈程序员站长
2022/09/30
3K0
vscode 配置C语言编译环境(完美版)_C语言环境安装
VSCode 配置 C++ 运行环境
本文记录使用 vscode 配置c++编程环境的流程。 环境准备 项目 内容 操作系统 Windows 10 软件安装 VS code 官网:https://code.visualstudio.com/ 安装gcc编译器 下载 链接:MinGW-w64 - for 32 and 64 bit Windows 选最新版本中的x86_64-posix-seh 安装 解压压缩包 将目录中的bin添加到环境变量 验证 在cmd中输入命令 > gcc -v Using built
为为为什么
2022/08/05
1.2K0
64位Windows 10下如何搭建CUNIT环境
Windows下如何搭建CUNIT环境资料很多,但是错误不少或者讲解不清晰,很容易让人跌入坑中,现在介绍如下。
顾翔
2020/06/22
2.6K1
Mac OS VScode C/C++ debug断点无效
原文出处:https://blog.csdn.net/fonnn/article/details/104065273
SL_World
2021/09/18
2.8K0
vscode安装
🌈个人主页:Rookie Maker 🏆🏆关注博主,随时获取更多关于IT的优质内容!🏆🏆
编程交流
2024/05/11
3230
vscode安装
VSCode配置C环境(MinGW)啰里啰唆篇
该args数组指定将传递给g ++的命令行参数。必须按照编译器期望的顺序指定这些参数。
云深无际
2021/04/28
9310
VSCode配置C环境(MinGW)啰里啰唆篇
推荐阅读
相关推荐
Vscode 搭建 C / C++ 开发环境
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验