Linux开发C++工具全攻略:从编码到调试一条龙

发布日期:2025-10-09 04:15浏览次数:

今天这玩意儿折腾我大半天,但搞定了是真爽!从新建文件到调试跑通,全程就蹲在Ubuntu终端里死磕。来来来直接上干货:

开局一把vim

摸进项目目录先sudo apt install build-essential gdb,结果发现早就装好了。直接vim *开写,手指头噼里啪敲个最蠢的:

  • #include
  • int main(){
  • cout << "狗子怎么又踩我键盘" << endl;
  • return 0;

写完手一抖:wq退出,立刻g++ * -o *想编译,编译器直接报错骂我。回头检查发现少打个尖括号,气得拍桌子。

调试大战三百回合

重编译完倒是输出了,但想玩点花的。在代码里塞了个数组越界:

  • int arr[3] = {1,2,3};
  • cout << arr[99] << endl;

运行直接闪退。这时掏出gdb *,敲run后程序崩在神秘地址。赶紧break main设断点,再step一步步跟。到数组那儿用print arr[99]查看,gdb怒吼Cannot access memory at address 0x7ffffff,当场人赃俱获。

makefile偷懒大法

每次改代码都要重新敲编译命令太蠢,直接建个Makefile

  • CC=g++
  • CFLAGS=-g -Wall
  • TARGET=*
  • all: $(TARGET)
  • $(TARGET): *
  • $(CC) $(CFLAGS) $< -o $@

保存后试了下make,瞬间编译成功!故意删掉个分号再make,编译器又跳出来骂我,省得手动输命令了。

血泪教训

顺手装valgrind检查内存,valgrind ./*哗刷出满屏红字:

  • 非法读取4字节
  • 99个字节压根没申请过

得,这调试三板斧够我喝一壶的。早知道当初写Python去了(摔键盘)

如果您有什么问题,欢迎咨询技术员 点击QQ咨询