-
5.查看全部
-
3.查看全部
-
2.查看全部
-
1.查看全部
-
1.查看全部
-
1.查看全部
-
1.查看全部
-
用于调试的编译问件:gcc -g 文件名.c -o 文件名.out
调试文件:gdb 文件名.out
进入调试状态,列出当前项目软件源代码:l/list,若显示不完整,直接回车键即可继续显示
设置断点:break 行数
单步调试:start
查看变量的值: p/print 变量名
进行下一步:n
按N之后,回车即可进行下一步
进入某一步中查看,在进行到该步时,:s/step
插看函数堆栈:bt
查看函数堆栈是,查看某一堆栈:f 堆栈行
查看全部 -
&————取地址符
查看全部 -
&为取位符号
查看全部 -
#include<stdio.h> void change(int *a,int *b) { int tmp=*a; *a=*b; *b=tmp; } int main() { int a=5; int b=3; change(&a,&b); printf("num a=%d\nnum b=%d",a,b); return 0; }
查看全部 -
只有堆和栈里面可以进行修改数据,代码段不允许修改数据
查看全部 -
* 指针
& 取地址符
如果一个函数接收的是指针类型的值,那么传参的时候要加& 把地址传过去
查看全部 -
gdb调试打印内存: x/3d * ,说明:x代表打印,3代表打印长度,d代表十进制输出,*代表首地址
指针运算:int *p; p++ ; 说明:指针运算和类型相关,因为p为int *类型,int类型为4个字节,故p++偏移4个字节。
查看全部 -
gdb调试:
1、gcc -g main.c -o main.out 编程可以单步调试的程序;
2、l 查看代码;
3、start 从main函数开始执行;
4、n 下一行
5、p 打印
6、s 单步,进入函数等
7、bt 查看堆栈信息
8、f * 切换堆栈
查看全部
举报