【已測】VScode 調試C/C++時出現沒法打開「X」: 找不到文件(file:///XXXX) 的解決辦法

VScode 調試C/C++時出現沒法打開「X」: 找不到文件(file:///XXXX) 的解決辦法

2條回覆html

 

這個問題折騰了我許久,才發現是tasks.json那邊出了問題…c++

也百度過不少,什麼sourceFileMap都試過沒啥用,後經一頓摸索,解決了問題json

方法1:segmentfault

這是原來的tasks.json內容spa

 

1調試

2c++11

3code

4regexp

5htm

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 

我解決了問題纔看到這個方法。。

 

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

 

正則式 我試了沒成 ,我直接改爲了"/" 這樣就能夠了

相關文章
相關標籤/搜索