首页 > 编程语言 >vecode写c++遇到窗口一闪而过+中文乱码咋办

vecode写c++遇到窗口一闪而过+中文乱码咋办

时间:2024-10-17 21:32:13浏览次数:6  
标签:exe vecode cmd c++ 乱码 fileDirname gdb ++.

本人没使用系统cmd窗口,而是使用了vscode内置终端,目的是为了之后输出中文的时候不乱码(vscode是utf-8,cmd是gbk,干脆全部使用vscode,不使用系统cmd作为输出窗口)

附上配置文件:

launch.json

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "g++.exe - 生成和调试活动文件",
            "type": "cppdbg",
            "request": "launch",
            // "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            // "args": [],

            "program": "C:\\Windows\\System32\\cmd.exe",
            "args": ["/c","${fileDirname}\\${fileBasenameNoExtension}.exe","&","pause"],

            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false, // 修改此项为true,运行时可以弹出console终端,此处不使用系统终端,故为false
            "MIMode": "gdb",
            "miDebuggerPath": "C:\\Program Files\\mingw64\\bin\\gdb.exe",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: g++.exe 生成活动文件"
        }
    ]
}

task.json

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: g++.exe 生成活动文件",
            "command": "C:\\Program Files\\mingw64\\bin\\g++.exe",
            "args": [
                // "-fexec-charset=GBK", //这里没用到系统终端,故不改成gbk格式
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build",
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

标签:exe,vecode,cmd,c++,乱码,fileDirname,gdb,++.
From: https://www.cnblogs.com/hisun9/p/18473156

相关文章

  • c++ --类和对象(篇1)
    目录1.类的概念:2.类的定义3.对象的创建:4.封装5.继承1.类的概念:                类用于指定对象的形式,是一种用户自定义的数据类型,                它是一种封装了数据和函数的组合。类中的数据称为成员变量,函数称为成员函数。 ......
  • 【算法】C++中的二分查找
    ......
  • 牛客周赛63(C++实现)
    ......
  • Linux环境下Matplotlib绘图中文乱码问题
    问题:如图所示,中文乱码1.准备ttf字体文件:路径: C:\Windows\Fonts例如楷体:simkai.ttf2.查看当前环境的matplot字体路径:importmatplotlibprint(matplotlib.matplotlib_fname())运行结果:/home/3kyou/.local/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibr......
  • C++核心编程、面向对象
    目录一、内存分区模型1、运行程序前代码区全局区总结:2、运行程序后栈区堆区 3、new关键字基本使用开辟数组二、引用1、基本使用2、引用的注意事项3、引用做函数参数4、引用做函数返回值5、引用的本质6、常量引用三、函数提高1、函数的默认参数2、函数......
  • (新!)c++类与对象
    C++ 类&对象C++在C语言的基础上增加了面向对象编程,C++支持面向对象程序设计。类是C++的核心特性,通常被称为用户定义的类型。类用于指定对象的形式,是一种用户自定义的数据类型,它是一种封装了数据和函数的组合。类中的数据称为成员变量,函数称为成员函数。类可以被看作......
  • 【2024华为OD-E卷-100分-内存资源分配】(题目+思路+Java&C++&Python解析+在线测试)
    在线评测链接题目描述有一个简易内存池,内存按照大小粒度分类,每个粒度有若干个可用内存资源,用户会进行一系列内存申请,需要按需分配内存池中的资源返回申请结果成功失败列表。分配规则如下:分配的内存要大于等于内存的申请量,存在满足需求的内存就必须分配,优先分配粒度小的......
  • 利用Visual Studio调试WSL下的C++工程
    这里写了一个基于Qt5的控制台的小代码:#include<QCoreApplication>#include<QDebug>intmain(intargc,char**argv){ QCoreApplicationa(argc,argv);qDebug()<<"Applicationstarted";inttestValue=42;qDebug()<<"......
  • C++ 易踩坑总结以及小技巧
    1.for循环中在栈上创建的对象可能具有相同的地址,进行指针操作时需注意;所以循环中最好使用new来创建指针并操作地址;for(intx:arr){ ClassNameobj();\\itisliketohavethesameaddressineveryloop ClassNameobj2=newClassName(); std::cout<<&obj<<std::en......
  • 为何选择 C++:深入剖析其优势与适用场景
    在众多编程语言的璀璨星空中,C++以其独特的魅力和强大的功能闪耀着独特的光芒。对于许多编程学习者和开发者来说,选择C++作为学习或应用的语言,往往有着诸多深刻的原因。一、强大的性能与效率C++是一种高效的编程语言,它直接操作硬件资源,能够生成高度优化的代码。这使得它在......