【已测】VScode 调试C/C++时出现无法打开“X”: 找不到文件(file:///XXXX) 的解决办法...

VScode 调试C/C++时出现无法打开“X”: 找不到文件(file:///XXXX) 的解决办法

2条回复

 

这个问题折腾了我许久,才发现是tasks.json那边出了问题…

也百度过很多,什么sourceFileMap都试过没啥用,后经一顿摸索,解决了问题

方法1:

这是原来的tasks.json内容

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

{

    "version": "0.1.0",

    "command": "g++",

    "args": [

        "-g",

        "${file}",

        "-o",

        "${fileBasenameNoExtension}.exe",

        "-std=c++11",

        "-Wall",

        "-fno-asm",

        "-DONLINE_JUDGE"

    ], // 编译命令参数

    "problemMatcher": {

        "owner": "cpp",

        "fileLocation": [

            "relative",

            "${workspaceRoot}"

        ],

        "pattern": {

            "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",

            "file": 1,

            "line": 2,

            "column": 3,

            "severity": 4,

            "message": 5

        }

    },

    "showOutput": "always"

}

语法高亮没找到json的,选了个js。

我的解决方法是重写正则,把21行的正则改成了

 

1

^(.*)\\\\(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$

再把下面的file到message的数字全部加一

 

1

2

3

4

5

"file": 2,

"line": 3,

"column": 4,

"severity": 5,

"message": 6

就可以解决了。

方法2:

把18行的

 

1

"${workspaceRoot}"

改成

 

1

"\\"

也可以,这个方法出自https://segmentfault.com/q/1010000009791477 

我解决了问题才看到这个方法。。

 

==============================

 

正则式 我试了没成 ,我直接改成了"/" 这样就可以了

 

转载于:https://my.oschina.net/u/4000302/blog/3046204

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值