VSCode运行时弹出CMD窗口、闪退及显示乱码的解决,实测可行

        VSCode学习C语言编程,运行时默认在下面的terminal控制台输出,窗口较小,内容稍多会有一定不便。

        一、如果要在单独弹出的终端窗口中运行,需要进行配置,方法是修改将launch.json文件中参数,该文件通常在对应项目目录的.vscode下面。网上大多是说将"externalConsole"设置为true,实测不行。查阅资料后发现正确的新的参数应该是"console",参数可以选择"internalConsole"和 "externalTerminal",分别表示内置终端控制台还是外部终端弹出窗口,把这里设置成"externalTerminal",同时把"type"参数设置为"cppvsdbg",就可以了。

        修改之后的参数如下:

{
    "version": "0.2.0",
    "configurations": [
  
      {
        "name": "C/C++ Runner: Debug Session",
        "preLaunchTask": "g++.exe build active file",//调试前执行的任务,就是之前配置的tasks.json中的label字段
        "type": "cppvsdbg",
        "request": "launch",
        "args": [],
        "stopAtEntry": false,
        "console": "externalTerminal",
        "cwd": "${workspaceFolder}",
        "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
        "MIMode": "gdb",
        "miDebuggerPath": "C:\\Program Files\\CodeBlocks\\MinGW\\bin\\gdb.exe",
        "setupCommands": [
          {
            "description": "Enable pretty-printing for gdb",
            "text": "-enable-pretty-printing",
            "ignoreFailures": true
          }
        ]
      }
    ]
  }

        配置完成后,如果想在内置的终端面板中运行,可以通过右上角的菜单运行和调试。

        如果想在弹出的终端窗口中运行,可以通过快捷键或者菜单选择运行或者调试菜单:

        F5(启动调试):Debugging模式

        Ctrl+F5(开始执行,不调试):Start Without Debugging模式

        二、闪退,即在弹出窗口运行完成后窗口会自动关闭,按上面的方法配置后就不会闪退了,会提示“按任意键继续....”。

        当然最简单的办法也可以在源代码中return 0;语句的前面加下一个getchar();。

        三、弹出窗口中中文显示乱码

        我遇到的情况是在内置终端面板运行中文显示正常,但是在弹出窗口中就是乱码:

    

        原因是VSCode默认中文编码是UTF-8,而windows中文版终端默认是GBK,二者不一致导致乱码 。  

        解决办法:

       方法一:在windows11中打开 设置->时间和语言->语言和区域->管理语言和设置->更改系统区域设备,勾选下面的框,确定 ,这样就把windows终端显示编码改成了UTF-8,此时显示正常。但这种方法有可能导致使用GBK其他的应用程序出现异常或乱码,就需要升级或更换相应的软件。

        也可以通过 控制面板->区域 打开相应的设备页面:

        可以看到乱码问题解决了:

       方法二:修改VSCode的编码设置为GBK:

Files——>Preferences——>setting——>在搜索框输入encoding——>Files:Encoding ——> Simplified Chinese (GBk)。

不过如果之前使用UTF-8保存的文件,需要按新的编码重新打开或以新的编码保存,否则直接打开后显示乱码。具体操作是点击下面状态栏里面的编码格式后在弹出的选项里选择相应功能。

      方法三:直接修改task.json文件中运行输出的编码格式,如果习惯使用windows终端,则改成GBK,即把下图中红色框内的内容插入到相应位置并保存。如果习惯使用VSCode内置终端则不用修改。

方法四:下载插件C/C++ Compile Run extension并配置,具体方法我没使用,有兴趣的可以配置。

Visual Studio Code (VSCode) 的默认集成终端通常会使用系统的默认命令行界面(如Windows的CMD或macOS/Linux的Terminal)。如果你想要在运行Java程序打开一个新的CMD窗口,而不是默认的终端,可以按照以下步骤操作: 1. 安装适用于Windows的"PowerShell"插件:虽然默认是CMD,但是安装PowerShell插件(例如 "vscode-icons" 或者 "Powershell")可以让VSCode更倾向于使用PowerShell。 - 打开VSCode,点击左下角的扩展商店图标(齿轮形状),搜索"Powershell"并安装。 2. 配置launch.json文件:这是VSCode用于配置调试任务的文件。在`File` > `Preferences` > `Settings`菜单下搜索`tasks.json`,然后新建一个`launch.json`文件(如果还没有的话)。 ```json { "version": "0.2.0", "configurations": [ { "name": "Run using PowerShell", "type": "powershell", "request": "launch", "program": "${workspaceFolder}/${yourJavaFileName}.java", "args": ["${commandArguments}"], "cwd": "${workspaceFolder}", "preLaunchTask": "build" } ] } ``` 3. 设置预启动任务(preLaunchTask):确保有一个编译Java程序的任务(如`build`)配置好,比如使用Maven或Gradle构建。 4. 调试:在需要执行Java程序的源代码上右键单击,选择"Debug Configurations" -> "Run using PowerShell",这将启动一个新窗口来执行你的Java程序。 注意:你需要确保你的系统环境已经配置好Java SDK,并且能通过PowerShell正确地识别和执行Java程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值