刚接触Lunix不久,之前也没有在Lunix的环境下编写过c 语言的代码,昨天就简单的试了下,写了个简单的代码,实现字符串的连接。主要目的是学习了gcc编译程序的基本命令与gdb调试程序的方法。先把代码贴上来:
使用的基本命令如下:
gcc -g -c main.c -o main.o
-c 编译生成并生成目标文件
-g 在编译的时候,产生调试信息
-o 生成指定的输出文件。后面跟输出文件名
gcc main.o -o test
./test
执行生成的可执行文件
gdb test
l 查看代码
r 运行程序
b 5 在第5行的地方设置断点
n 下一步,不进入函数
s 下一步,进入函数
p 打印出变量的值
set variable 设置变量的值
q 退出gdb调试。
在此过程中,发现自己地指针的使用真心不行,C语言的基本功不扎实。在使用realloc函数时,一直出现Segmentation fault的错误提示。
查找百科realloc函数的使用方法时,在倒数第二行才发现:
传递给realloc的指针必须是先前通过malloc(), calloc(), 或realloc()分配的 。
阅读(1564) | 评论(0) | 转发(0) |