信息学竞赛开发环境快速入门:Vim、G++和GDB

原文链接:信息学竞赛开发环境快速入门:Vim、G++和GDB

前置知识

  • 操作系统命令行(终端)的使用方法和基本命令

第一部分:Vim

Vim是我们使用的命令行代码编辑器。
首先,在命令行下输入以下命令启动Vim:

vim code.cpp

输入i进入编辑模式。
编辑模式下你可以输入字符代码。
按下esc进入命令模式。
命令模式下有几种操作:
h:光标左移
j:光标下移
k:光标上移
l:光标右移
输入:进入行尾模式。
行尾模式下可以执行以下命令:
w:保存文件
q:退出Vim

第二部分:G++

G++是我们使用的命令行代码编译器。
一般使用以下命令编译:

g++ code.cpp -o code -g

命令执行后将编译code.cpp,生成可执行文件code,为了方便以后使用GDB调试,我们在编译命令后面加上参数-g
之后输入以下命令即可执行生成的可执行代码,看到程序运行的结果了:

./code

第三部分:GDB

GDB是我们使用的命令行代码调试器。

macOS下安装GDB

这里我们使用homebrew直接安装

brew install gdb

然后在钥匙串访问中选择证书助理->创建证书
证书类型设为代码签名,勾选让我覆盖这些默认值后一直点继续直到证书创建完毕
找到新建的证书(这里起名叫gdb-cert)->显示简介->选择使用此证书时:始终信任
来到命令行窗口,执行以下命令给证书签字:

codesign -s gdb_cert /usr/local/bin/gdb

再执行如下命令:

echo "set startup-with-shell off" >> ~/.gdbinit

就可以在macOS上正常使用gdb了。

输入以下命令启动GDB后需要载入待调试程序code

sudo gdb code

调试程序时可用命令:
r「run」:运行待调试程序
b 2「breakpoint」:在第 2 行添加断点
b main「breakpoint」:在main函数开始位置添加断点
s「step」:执行下一步(下一行代码)
p n「print」:输出变量n的值
c「continue」:继续运行
q「quit」:退出调试器

总结

因为这两天我的Sublime Text 3突然License失效了,正好马上要去APIO/CTSC,就决定学习一下这种开发环境,终于可以彻底摆脱鼠标(触控板)了!!!
学到这里基本上就可以快速上手编写代码并运行调试了,后期很多功能还需要逐步学习熟悉。

你可能感兴趣的:(随笔)