如标题,被这个问题整了好长时间了,调试的时候如果有语法错误只能显示相应的的行数,没有办法定位到出错的行数上。(由于用处不是很大并且没有找到解决办法,所以就一直放着没管23333)
直到最近看到一位大佬的解决办(重写正则表达式)法不错,这里分享一下:(原地址戳我)
这是原来的tasks.json
{ "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" }
重写21行,引号内替换如下内容
^(.*)\\\\(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$
然后将21-26行每一行的数值+1
"file": 2, "line": 3, "column": 4, "severity": 5, "message": 6
顺利解决问题~
**解决方法出自飞的博客( https://flylai.com/513.html )如侵权请联系管理员删除,谢谢!