c语言如何截取字符串?
答案:2 悬赏:0
解决时间 2021-01-21 11:04
- 提问者网友:鐵馬踏冰河
- 2021-01-21 01:15
c语言如何截取字符串?
最佳答案
- 二级知识专家网友:洎扰庸人
- 2021-01-21 02:51
strncpy想截取几个字节截取几个字节,是它吧
全部回答
- 1楼网友:刀戟声无边
- 2021-01-21 04:20
** substring.C -- 截取字符串 */
#include "stdio.h"
#include "conio.h"
char *left(char *dst,char *src,int n,int m)
{
char *p=src;
char *q=dst;
int len=strlen(src);
if(n>len) n=len;
while(n--) *(q++)=*(p++);
*(q++)='\0';
return dst;
}
char *right(char *dst,char *src,int n,int m)
{
char *p=src;
char *q=dst;
int len=strlen(src);
if(n>len) n=len;
p+=(len-n);
while(*(q++)=*(p++));
return dst;
}
char *mid(char *dst,char *src,int n,int m)
{
char *p=src;
char *q=dst;
int len=strlen(src);
if(n>len) n=len-m;
if(m>0) return NULL;
p += m;
while(n--) *(q++) = *(p++);
*(q++)='\0';
return dst;
}
char *substring(char *dst,char *src,int len,int start)
{
char *p=dst;
char *q=src;
int length=strlen(src);
if(start>=length||start<0) return NULL;
if(len>length) len=length-start;
q+=start;
while(len--)
{
*(p++)=*(q++);
}
*(p++)='\0';
return dst;
}
main()
{
char *src="411524198510088017";
char *year,*month,*day;
int i;
substring(year,src,4,6);
for(i=0;i<strlen(year);i++)
{
printf("%c",*(year+i));
}
getch();
}
原型:extern char *strstr(char *haystack, char *needle);
用法:#include <string.h>
功能:从字符串haystack中寻找needle第一次出现的位置(不比较结束符NULL)。
说明:返回指向第一次出现needle位置的指针,如果没找到则返回NULL。
举例:
// strstr.c
#include <syslib.h>
#include <string.h>
main()
{
char *s="Golden Global View";
char *l="lob";
char *p;
clrscr();
p=strstr(s,l);
if(p)
printf("%s",p);
else
printf("Not Found!");
getchar();
return 0;
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯