编写一个函数,它从一个字符串中提取一个子字符串。函数原型如下:
int substr(char dst[], char src[],int start, int len)
{}
目标是:从 src 数组起始位置向后偏移 start个字符的位置开始,最多复制 len 个非NUL 字符到 dst数组。在复制完毕之后, dst 数组必须以 NUL字节结尾。函数的返回值是存储于 dst 数组中的字符串的长度。
#include<stdio.h>
#include<stdlib.h>
#define LEN 2
int substr(char dst[], char src[], int start, int len)
{
int i = 0;
while ((src[start-1] != ‘\0‘)&&(i<len))
{
dst[i++] = src[start++-1];
}
dst[i] = ‘\0‘;
printf("str1=%s\n", dst);
return i;
}
int main()
{
char str1[LEN+1];
char str2[] = "abcdefg hijklmn opqrst uvwxyz";
int len = 0;
len=substr(str1,str2,3,LEN);
printf("长度为:%d", len);
system("pause");
return 0;
}原文:http://lingdandan.blog.51cto.com/10697032/1702629