函数的学习

今天学习了函数,老规矩,留一个我最满意的代码。

/*
 * 2017年7月19日09:49:21
 * 5.输入一个字符串,同时输入帧头和帧尾(可以是多个字符),
 * 将该字符串中合法的帧识别出来.
 * 提示:帧头和帧尾分别是head和tail  
 * 字符串”asdheadhauboisoktail”中headhauboisoktail是合法帧
 * */


#include<stdio.h>
#include<string.h>
//先写一个函数,要求在字符串中找到你要的字符
char* findstr1(char *str,char *seek)
{
char *p = NULL;
int len = strlen(seek);
while(*str)
{
if (strncmp(str,seek,len)==0)
{
p = str;
break;  //防止找到第二次,改变合法针
}
str ++;
}
return p;
}


char* findstr2(char *str,char *seek)
{
char *p = NULL;
int len = strlen(seek);
while(*str)
{
if (strncmp(str,seek,len)==0)
{
p = str;
//break;  第二个要找到屁股上
}
str ++;
}
return p;
}
//再写一个函数,找出合法的字符,输出
void findsave(char *str,char *head,char *tail)
{
char *phead = findstr1(str,head);
char *ptail = findstr2(str,tail);


if (phead!=NULL && ptail!=NULL)
{
ptail += strlen(tail);
*ptail = '\0';
puts(phead);
}
else
printf("没有合法针");
}


int main()
{
char str[] = "iisdaheadadadaheadgrgrghdtailfgrggtail";
findsave(str,"head","tail");
return 0;
}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值