从一个字符串中提取指定字符串,存到另一字符串中!
#include <stdio.h>
#include <string.h>
int substr(char dst[], char src[], int start, int len);
int main(void)
{
char src[10], dst[10];
int start, len;
printf("请输入一个字符串:");
gets(src);
fflush(stdin);
printf("请输入要复制的字符串起始位置:");
scanf("%d", &start);
printf("请输入要复制的字符串个数:");
scanf("%d", &len);
substr(dst, src, start, len); //调用函数
printf("%s\n", src);
printf("%s\n", dst);
return 0;
}
int substr(char dst[], char src[], int start, int len)
{
int i = 0;
if(start > strlen(src) || start <= 0 || len <= 0) //这种情况,字符串为空
{
dst[i] = '\0';
return 0;
}
start = start - 1;
for(; i < len; start++, ++i)
{
dst[i] = src[start]; //复制到另一个数组中
}
dst[i] = '\0'; //最后加上一个空字符
return i;
}