如何在Sublime Text 3中编译C++后自动运行生成的.exe文件?
Sublime Text 3中实现C++编译后自动运行的解决方案
你当前的配置存在核心问题:JSON对象中重复定义的"cmd"键会被最后一个覆盖,所以实际只执行了运行旧exe的命令,完全没触发编译步骤,这就是为什么运行的是旧版本文件。
以下是修正后的完整配置,实现编译成功后自动运行新生成的exe:
{ "cmd": ["cmd", "/c", "C:/Program Files (x86)/Dev-Cpp/MinGW64/bin/g++", "-o", "${file_path}/${file_base_name}.exe", "-static-libgcc", "-static-libstdc++", "${file_path}/${file_base_name}.cpp", "&&", "start", "cmd", "/K", "${file_path}/${file_base_name}.exe"], "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", "selector": "source.cpp", "shell": true }
关键改动说明:
- 用
cmd /c包裹连续命令,确保编译和运行步骤都能被执行 - 通过
&&连接编译与运行命令:只有编译成功(返回码为0)时,才会启动新窗口运行exe - 运行exe时使用完整路径
${file_path}/${file_base_name}.exe,避免因工作目录问题找不到新生成的文件 - 移除重复的
"cmd"键,保证配置逻辑正确
内容的提问来源于stack exchange,提问作者dummycode
相关产品推荐
相关产品推荐

