一、vim
vim修改一下配置文件后,如果你稍微会点vim的命令使用,那可比一般的编辑器好用啊,如果一点不会vim的命令使用,就跟一般编辑器一样使用。
打开etc/vim/vimrc文件
这里的引号是注释的意思。
去掉引号就可以了,我说明一下某些set的意思,其他的可以自己网上搜搜是啥意思,其实后面英文有注释的。如果自己的配置文件里面没有,可以手动添加。
set mouse=a 在终端中可以使用鼠标
set ignorecase 查找时忽略大小写
set nu 自动添加行号
set ai 自动缩进
set smartindent 智能对齐
set encoding=cp936 设置当前字符编码为windows简体中文
set tabstop=4 设置TAB键为4个空格
按下面我修改的一些就可以很利索的使用vim:
编辑.c文件的效果是:
二、GCC
gcc方面的资料网上应该一大堆http://blog.csdn.net/yyaong_520/article/details/6766820
一般情况下,我只用一个
-o的命令:
还有一个-g的命令:指示编译程序在目标代码中加入供调试程序gdb使用的附加信息。在使用gdb调试的时候,最好加上这个选项。
三、gdb
我习惯以一个可执行程序作为gdb的参数启动gdb
gdb first(first问gcc的输出结果)
(注意,gcc加了-g选项)
下面说几个调试时常用到的几个选项。
list 显示源文件:
list 没有参数,显示当前行之后或周围的10多行
list start,end 显示从行号start到end之间的代码行。
print 查看运行时的数据
print i 显示当前变量i的值
print &i 显示变量i的存放地址
print array@5 显示从array(数组名)开始的5个值
print array[2]@3 显示从array第二个元素开始的3个数组元素的值
whatis i 显示变量i的数据类型
设置断点 break
break linenum 在当前文件指定行linenum处设置断点
break function 在当前文件函数function的入口处设置断点
显示断点 info
info breakpoints/break/watchpoints [num]
单步跟踪
step [N] 如果遇到函数调用,并且该函数编译时有调试信息,则会进入该函数内执行。
next [N] 遇到函数调用时,执行整个函数。
连续执行
continue 从当前行开始,连续执行到下一个断点处,或者到达该程序结束。命令中可以给出一个数字N,忽略其后N-1次断点
运行程序 run
另外几个:clear(清除所有已定义的断点),delete(删除所有断点,后面可给出断点号码,多个断点用空格分开),disable(停用指定断点,停用多个则用空格分开),enable(激活被停用的断点,各断点号码用空格分开)
我的博客中有个“gdb的简单使用”
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?