实验三Linux编译器使用
实验三 Linux编译器的使用
一.实验名称:
Linux编译器的使用
二.实验目的:
理解Linux编译器的使用;熟悉C程序的编辑、运行、调试方法与过程; 使用vi、gcc、gdb、make
实验内容:
根据下面的程序创建工程FindString;使用GCC编译、使用GDB调试找出错误并打包生成安装包;尝试自己编写makefile文档
给定程序中,函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值为NULL。
例如,当字符串中的内容为“abcdabfabcdx”、t中的内容为“ab”时,输出结果应是abcdx。当字符串中的内容为“abcdabfabcdx”、t中的内容为“abd”时,则程序输出未找到信息not be found!。
请改正程序中的错误,使其能得出正确的结果。
#include
#include
char *fun(char *s,char *t)
{
char *p,*r,*a;
a=NULL;
while(*s)
{
p=s;r=t;
while(*r)
if(*r==*p)
{r++;p++;}
else break;
if(*r=='\0') a=s;
s++;
}
return a ;
}
main()
{
char s[100],t[100],*p;
printf("\nPlease enter string S :");
scanf("%s",s);
printf("\nPlease enter substring t :");
scanf("%s",t);
p=fun(s,t);
if(p) printf("\nThe result is :%s\n",p);
else printf("\nNot found !\n");
}
打开终端。
2.在终端中用vi编辑器创建文件saint.c
输入vi saint.c进入编辑器编辑。输入代码内容。
在底行模式输入:wq退出。
3输入gcc -g saint.c -I /home/saint -o saint生成可执行文件saint.,然后输入gdb saint进入gdb调试。
输入l显示文件,并输入b 11 设置11行为断点。
输入r运行程序。
最终程序没有错误。