一、首先使用gdb调试之前我们生成应用程序需要带有debug信息那么我们在生成可执行程序的时候首先应该带有 -g参数
g++ -g server.cpp -o server
二、进入gdb模式
gdb
三、常用命令
1、gdb加载可执行文件
(gdb) file server
Reading symbols from /usr/cyCPP/myServer/server...done.
Using host libthread_db library "/lib/tls/libthread_db.so.1".
说明载入成功并且带有符号表信息
2、一次只列10行,如果要从第11行开始继续列源代码可以输入
(gdb) list
11 #include <arpa/inet.h>
12 #define SERVERPORT 3333
13 #define BACKLOG 10
14 using namespace std;
15 int main()
16 {
17 int sockfd,client_fd;
18 struct sockaddr_in my_addr;
19 struct sockaddr_in remote_addr;
20 if((sockfd = socket(AF_INET,SOCK_STREAM,0)) == - 1)
3、直接回车重复上一次命令(gdb这个功能还是蛮好用的)
4、断点b(gdb) b main
Breakpoint 1 at 0x8048a88