函数原型如下:

   int substr(char dst[], char src[], int start, int len){}

目标是:

   从 src 数组起始位置向后偏移 start个字符的位置开始,

最多复制 len 个非NUL 字符到 dst数组。在复制完毕之后, dst 数组必须

以 NUL字节结尾。函数的返回值是存储于 dst 数组中的字符串的长度。


#include<stdio.h>


int main()

{

char dst[10];

char src[] = "Hello—Wellcome";

substr(dst, src, 6, 8);

printf("%d\n", sizeof(dst));

printf("%d\n", strlen(dst)+1);

printf("%s\n", dst);

system("pause");

return 0;

}


int substr(char dst[], char src[], int start, int len)

{

char* sc = src + start;

//assert(dst != NULL&&src != NULL);

int n, i=0;

n = strlen(sc);

if (n < len)    //拷贝len个

{

len = n;

}

while (len)

{

dst[i] = sc[i];

len--;

i++;

}

dst[i] = ' ';

}