今天在用Vscode写代码时,一直出现报错This may occur if...,我一直在找路劲问题,但是发现自己的路径没有问题。执行task.josn时可以生成相应的.exe文件,就是在按下F5时,launch.json文件一直报这个错误,我再运行昨天写的代码,也不可以运行了,也是出现这个问题。之后经过不断查找和尝试,终于知道原因了。由于我下载的文件解压之后总是出现乱码,所以我就修改了电脑的语言区域设置。具体解释如下:

在用vscode写c/c++代码的时候,除了运行,还免不了要去调试。在gcc的编译器环境下,一般使用GDB来进行。但是windows下的GDB有个可大可小的问题,那就是不支持中文。如果对于英文比较好的人来说,这个根本就不是问题。但是对于我这种英文渣来说,就是一个很大的问题。具体的文件还好,但是文件夹的名称如果是英文,根本没有办法很好的分类。这里可以使用一个Windows的实验性功能来解决这个问题。

首先,在搜索框中搜索“区域“,并选择图示的选项进入(我的电脑是Windows11,Windows10的电脑应该大同小异,毕竟这个功能貌似已经存在了很久了)

然后点击“管理->更改系统区域设置”。

勾选“Beta版"时支持中文文件夹路径(注意是文件夹,.cpp文件还是不支持的),不勾选时就不支持中文文件夹路径。

但是,需要注意的是,这个功能之所以被藏在角落里,就是因为有兼容性上的问题。在Windows系统中,默认使用的中文编码方式是GBK,在而GDB不支持GBK的编码,因此在切换为UTF-8之后可以解决不兼容的问题,但是对于其他一部分软件,特别是一些古董软件,就容易出现乱码的问题。所以我觉得还是使用英文路径比较好,避免其它软件或者文件夹出现乱码。