记录一下Ubuntu下GDB的编译操作
以下内容参考自:
L i n u x Linux Linux网络编程(第 2 2 2版)
https://blog.csdn.net/zdy0_2004/article/details/80102076
m a i n . c p p main.cpp main.cpp
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
// 输出数组中的字符串
int sum(int number, int *Array);
int main(void)
{
int number;
cout << "Please enter a number: ";
cin >> number;
int *Array = new int[number];
cout << "Please Enter " << number << " number: ";
// 循环申请内存并录入argc个字符串
for (int i = 0; i < number; i++)
cin >> Array[i];
cout << "Sum of the " << number << " number is: " << sum(number, Array) << endl;
delete Array;
return 0;
}
int sum(int number, int *Array)
{
int sum = 0;
for (int i = 0; i < number; i++)
sum += Array[i];
return sum;
}
G D B GDB GDB常用命令目录表:
GDB命令 | 格式 | 含义 | 简写 |
---|---|---|---|
list | list[开始],[结束] | 列出文件的代码清单 | l |
printf p | 打印变量内容 | p | |
break | break [行号/函数名] | 设置断点 | b |
continue | continue[开始,结束] | 继续运行 | c |
info | info para | 列出信息 | i |
next | next | 下一行 | n |
step | step | 进入函数 | S |
display | display para | 显示参数 | |
file | file path | 加载文件 | |
run | run args | 运行程序 | r |
在进行 G D B GDB GDB调试程序前,我需要先生成可执行文件如下:
在使用 G D B GDB GDB调试程序前,我们先得生成可执行文件。为了使得最后得可执行文件能被 G D B GDB GDB调试,我们需要在编译得命令中加上 - g g g 指令。如下:
g++ Demo.cpp -o Demo -g
然后我们可以使用如下指令将可执行文件 D e m o Demo Demo加载进入 G D B GDB GD