这里有一个类似的问题
我的意图是
- 使代码在外部终端中运行
- 暂停那个终端,这样我就能看到结果
在集成终端中运行代码的原始代码运行程序设置是
"code-runner.executorMap":{
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
...
}
我已经设法使用以下代码使代码在外部终端中运行:
"code-runner.executorMap":{
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && start $fileNameWithoutExt.exe",
...
}
但终端消失得太快了,我看不到结果
我已经在上面的链接上尝试了第四个答案:
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && Start pwsh -Command "& {.\$fileNameWithoutExt.exe; pause}"",
但它对我不起作用,正如vscode所说:找不到与参数名称"Command"匹配的参数。
我也试过
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && start $fileNameWithoutExt.exe && pause",
但外部终端仍然消失;暂停";使集成终端暂停
然后我尝试了
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && start cmd /k $fileNameWithoutExt.exe"
我想";启动cmd";打开新的命令提示符/k〃;会让它继续下去
(https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/cmd)
它仍然不起作用,vscode说:找不到接受参数hw3.exe
的位置参数。(hw3是我的文件名(
我知道终端中有code-runner:run
——是否在Files>Preferences>Settings>User
中的集成终端设置中运行代码,但我的工作空间中有几个文件夹,我打算只在外部终端中运行该特定文件夹的代码。因此,我一直在检查该设置,并使用settings.json,这是该文件夹独有的。
感谢您抽出时间并保持安全!!
这应该可以做到:
"code-runner.executorMap":{
"cpp": "cd $dir && g++ -O2 -std=c++17 $fileName -o $fileNameWithoutExt && start cmd "/k ; $fileNameWithoutExt""
},
前面的答案不能让我只点击一次就退出cmd。
(我觉得这有点烦人。(
我认为使用"/c";用"&暂停";更好。
(实际上,我们只需要一个"&",我不知道为什么:P(
我认为最舒适的版本如下:
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && start cmd "/c ; $fileNameWithoutExt &pause"",