字符串基本操作

原创 2013年12月02日 16:28:38
#include <stdlib.h>

unsigned int strlenth(char *s)  /* 获取字符串长度 */
{
	unsigned int lenth = 0;
if(s!=NULL)
{
	while(*s!='\0')/* 代码在这里实现 */
	{
		s++;
		lenth++;
	}
}
return lenth;
}

void strcopy(char **target, char *source)  /* 字符串拷贝 */
{
	/* 代码在这里实现 */
	*target=(char*)malloc(strlenth(source)+1);
		char*dest=*target;
		while((*dest++=*source++)!='\0');	
}

int strcompare(char *s, char *t)  /* 字符串比较,s>t,则返回1;s=t,则返回0;s<t,则返回-1 */
{
	/* 代码在这里实现 */
	if(s!=NULL&&t!=NULL)
	{
		while(*s!='\0'&&*t!='\0')
		{
			if(*s>*t)
				return 1;
			else if(*s<*t)
				return -1;
			else
			{
				s++;
				t++;
			}
		}
		if(*s=='\0'&&*t!='\0')
			return -1;
		else if(*s!='\0'&&*t=='\0')
			return 1;
		else
			return 0;
	}

	return 0;
}

void strcombine(char **x, char *s, char *t)  /* 字符串连接,将字符串t接到s后面,x为连接后的新串 */
{
	/* 代码在这里实现 */
	if(s==NULL||t==NULL)
		return;
	 
	int len1=strlenth(s);
	int len2=strlenth(t);
		*x=(char*)malloc(len1+len2+1);
		char*dest=*x;
		//*x=*dest;
		while(len1--)
			*dest++=*s++;
		while(len2--)
			*dest++=*t++;
		*dest='\0';
		
	
}

void strcatch(char *s, unsigned int index, unsigned int lenth, char **t)  /* 字符串截取,从第index个字符开始,截取lenth长度的字符串,并输出到字符串t */
{
	/* 代码在这里实现 */
	int ll=strlenth(s);
	if(s==NULL||index<0||(index>=ll)||lenth<=0)
		return;
	
	if(index+lenth<=ll)
	{
		*t=(char*)malloc(lenth+1);
		char *dest=*t;
	while(lenth--)
	{
		*dest++=*(s+index);
		s++;
	}
*dest='\0';
	}
}


bool strsubstr(char *s, char *sub)  /* 字符串子串查找,如果子串sub在s中存在,则返回1,否则返回0 */
{
	bool result = 0;

	/* 代码在这里实现 */

	if(s!=NULL&&sub!=NULL)
	{
		
		char*q=s;
		int len=strlenth(sub);
		while(*s++!='\0')
		{
			
			char*p=sub;
			int i;
			for( i=0;i<len;i++)
			{
				
				if((*q!='\0')&&(*q==*p))
				{
					q++;
					p++;
				}
				else 
				{
					q=s;
					break;}
			}
			if(i==len)
			{
				result=true;break;
			}	
			
		}
	}

	return result;
}

字符串基本操作集锦

字符串基本操作集锦 所有C语言标准库支持的字符串操作都在string.h中,这个文件在/usr/include/下。确切的说,这个文件还包含对数组的访问。所包含的函数分为以下几类:复制、连接、比...
  • u010984552
  • u010984552
  • 2016年10月09日 17:32
  • 648

JAVA字符串的基本操作

连接字符串:+ 获取长度:length; 查找:str.indexOf(object value);/lastIndexOf(object value); 替换:replace(...
  • CarryBest
  • CarryBest
  • 2017年04月07日 16:03
  • 254

字符串定义和基本操作

字符串是一串有序字符的集合,在swift中,字符串用string类型来表示,也是字符类型的集合,兼容字符类型(character)和字符串类型(string),字符串链接可以用+号,字符串的更新和普通...
  • nvlangxin
  • nvlangxin
  • 2016年01月28日 23:13
  • 467

字符串的基本操作,c语言实现

话不多说,直接上代码。如果有什么错误,直接喷! #include #include #define LEN 100 #define LENINC 10 int main(...
  • wxy540843763
  • wxy540843763
  • 2016年01月09日 10:49
  • 485

使用堆栈判断字符串是否回文

描述:对于一个从键盘输入的字符串,判断其是否为回文。回文即正反序相同。如“abba”是回文,而“abab”不是回文。[基本要求](1)数据从键盘读入;(2)输出要判断的字符串;    (3)利用栈的基...
  • ls1120623840
  • ls1120623840
  • 2017年04月15日 00:17
  • 662

数据结构:字符串的堆分配存储结构,基本操作实现和测试。

//All rights reserved by panqiaomu  from:http://blog.csdn.net/panqiaomu// the Heap and Stack are dif...
  • yysdsyl
  • yysdsyl
  • 2007年04月09日 13:39
  • 3127

字符串常用操作方法总结

# -*- coding:utf-8 -*- '''字符串常用操作方法总结,部分内容整理自网上''' test_str='The Zen of Python, by Tim Peters' '''一...
  • linzch3
  • linzch3
  • 2016年09月03日 15:41
  • 1308

数据结构:字符串的基本操作

字符串(string)是由0个或多个字符组成的有限序列。一般使用顺序存储结构,末尾以’\0’表示结束,但不计入字符串的长度。 示例程序:(改编自《大话数据结构》#include using na...
  • Sandeldeng
  • Sandeldeng
  • 2016年11月01日 21:26
  • 516

数据结构_串_串的一些操作_C++实现

"head.h" #include #include using namespace std; class STRING { public: STRING(); void GetStr...
  • Jack_Wong2010
  • Jack_Wong2010
  • 2011年09月17日 00:07
  • 1569

学校测试-2015-2-27

题目一 描述 关键子工程(project.c/cpp/pas) 在大型工程的施工前,我们把整个工程划分为若干个子工程,并把这些子工程编号为1、2、……、N;这样划分之后...
  • qq_21110267
  • qq_21110267
  • 2015年02月27日 16:33
  • 482
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:字符串基本操作
举报原因:
原因补充:

(最多只允许输入30个字)