码迷,mamicode.com
首页 > 编程语言 > 详细

【C语言】 提取子字符串

时间:2015-10-25 22:51:58      阅读:273      评论:0      收藏:0      [点我收藏+]

标签:c

编写一个函数,它从一个字符串中提取一个子字符串。函数原型如下:
int substr(char dst[], char src[],int start, int len)
{}
目标是:从 src 数组起始位置向后偏移 start个字符的位置开始,最多复制 
len 个非NUL字符到 dst数组。在复制完毕之后,dst 数组必须以NUL字节结尾。
函数的返回值是存储于 dst 数组中的字符串的长度。



代码实现:

#include <stdio.h>
#include <assert.h>

int substr(char dst[], char src[], int start, int len)
{
	assert(dst);
	assert(src);
	int ret = 0;
	while (start)
	{
		src++; 
		start--;
	}
	if (strlen(src) < len)
	{
		len = strlen(src);
	}
	ret = len;
	while (len)
	{
		*dst++ = *src++;
		len--;
	}
	*dst = ‘\0‘;

	return ret;
}
int main()
{
	char *p = "bit-tech";
	char arr[10];
	char array[10] = {0};
	int ret = substr(arr, p, 4,5);
	printf("%d\n", ret);
	printf("%s\n", arr);
	system("pause");
	return 0;
}


本文出自 “Vs吕小布” 博客,请务必保留此出处http://survive.blog.51cto.com/10728490/1706007

【C语言】 提取子字符串

标签:c

原文地址:http://survive.blog.51cto.com/10728490/1706007

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!