缪凌锴_Mathew
2024-10-28 11:24:24
sublime text 的好处:考场上肯定有(不会真有什么考场没有 sublime text 吧),比 DevC++ 好用,界面好看(?),代码快捷键更多。
文章图片加载可能较慢。
提示:你需要先配置环境变量。
先打开你的 .cpp
文件,按下 Ctrl+Shift+B
或者 Ctrl+B
,点击 C++ Single File - Run。
之后你会发现直接点 Ctrl+B
就行了,它会自动记住你上次选择的 Build System。
然鹅你发现:这控制台输入不了。于是你需要文件读写:
freopen("data.in","r",stdin);
freopen("data.out","w",stdout);
运行完之后控制台会有一行 [Finished in ?s]
的提示,这个运行时间是不准的(包含编译时间)。
你可能会觉得:这只能文件读写这不是太麻烦了吗,还不如 DevC++ 弹黑窗。
但是别忘了:sublime text 还是一个非常厉害的文本编辑器(开个 100+MB 的大样例都不成问题)。
我们在 data.in
界面分屏,点击 View-Groups-Move File to New Group(快捷键 Ctrl+K,Ctrl+Up
)
然后你就发现 data.in
分屏到了右半边。
然后拖动 data.out
卡片到右侧分屏,再次操作 Move File to New Group,然后就可以分屏成这样:
只要运行左侧的代码,右侧输出的结果就可以动态更新,这样就好调试很多了。
当然可以把 data.ans
也分屏进去:
分屏还原快捷键:Alt+Shift+1
。
点击 File-Open Folder,选择你的代码存放目录。
然后左侧会出现文件目录,双击文件目录里的文件可以打开。
Ctrl+B
太难用了,别急,配个快捷键。
点击 Preferences-Key Bindings。
在左侧的默认配置内搜索(快捷键 Ctrl+F
)"ctrl+b"。
找到这一句话:
{ "keys": ["ctrl+b"], "command": "build" },
复制到右侧,并且将 "ctrl+b" 改为你想要的快捷键:
保存后就可以使用了。
sublime text 快捷键列表
进入目录 C:\Program Files\Sublime Text 3\Packages
,找到文件 C++.sublime-package
。
这时候你打不开这个文件。假如你有 WinRAR 或者 7-Zip 之类的压缩软件,用它打开;没有的话把文件后缀名改为 .zip
之后再用文件资源管理器打开。
解压之后找到 C++ Single File.sublime-build
,打开。
在 shell_cmd:
里面的 g++
后面加上你的编译选项
把 C++ Single File.sublime-build
压缩回 C++.sublime-package
并保存,重启 sublime text 即可使用。
当然也可以选择 Tools-Build System-New Build System。
把 C++ Single File.sublime-build
里的内容粘贴进去并保存,之后在代码界面 Ctrl+Shift+B
,选择你刚刚命名的 Buildm System - Run。
考场建议配置 -O2 -std=c++14 -static -Wl,-stack=1024000000
打开你配的 C++ Single File.sublime-build
,发现编译运行的配置是这样的:
{
"name": "Run",
"shell_cmd": "g++ \"${file}\" -o \"${file_path}/${file_base_name}\" && \"${file_path}/${file_base_name}\""
}
再这段后面打一个逗号,新建一段:
{
"name": "Debug",
"shell_cmd": "g++ \"${file}\" -o \"${file_path}/${file_base_name}\" && start cmd /c \"${file_path}/${file_base_name} & pause\""
}
需要背一下这新的一段需要加什么:
原本最后是
&& \"${file_path}/${file_base_name}\"
加上启动 cmd 调试,变为
&& start cmd /c \"${file_path}/${file_base_name}\"
但你发现 cmd 最后没有 pause,变为
&& start cmd /c \"${file_path}/${file_base_name} & pause\"
在代码界面 Ctrl+Shift+B
,选择你刚刚命名的 Buildm System - Debug。
这时候就可以直接弹出 cmd 运行代码了,解决世纪难题:必须文件读写。
知道 Build System 里面那个语句的原理后你就可以召唤 cmd 作妖了。
比如:
{
"name": "Run And Diff",
"shell_cmd": "g++ \"${file}\" -o \"${file_path}/${file_base_name}\" && \"${file_path}/${file_base_name}\" && start cmd /c \"fc ${file_path}\\data.out ${file_path}\\data.ans & pause\""
}
就能在运行完毕后弹出 cmd 比较(fc
命令)你的输出文件和答案文件。
当然还可以根据文件名找到 .out
和 .ans
。
{
"name": "Run And Diff(By Name)",
"shell_cmd": "g++ \"${file}\" -o \"${file_path}/${file_base_name}\" && \"${file_path}/${file_base_name}\" && start cmd /c \"fc ${file_path}\\\"\"${file_base_name}.out ${file_path}\\\"\"${file_base_name}.ans & pause\""
},