首页 > 代码库 > 数据结构—串的堆分配

数据结构—串的堆分配

#include<stdio.h>
#include<stdlib.h>
typedef struct
{	char *ch;
	int length;
}HString;
void StrAssign(HString &T,char *chars);
void StrLength(HString S);
void StrCompare(HString S,HString T);
void ClearString(HString &S);
void Concat(HString &T,HString S1,HString S2);
void SubString(HString S,int pos,int len);
void main()
{
}
void StrAssign(HString &T,char *chars)
{	if(T.ch)
		free(T.ch);
	for(i=0,c=chars;c;i++,c++);
	if(!i)
	{	T.ch=NULL;
		T.length=0;
	}
	else
	{	if(!(t.ch=(char *)malloc(i*sizeof(char))))
		{	printf("ERROR!\n");
			return;
		}
		for(j=i;j>=1;j--)
			T.ch[j-1]=chars[j-1];
		T.length=i;
	}
}
void StrLength(HString S)
{	printf("The length of String is:%d\n",S.length);
}
void StrCompare(HString S,HString T)
{	for(i=0;i<S.length&&i<T.length;i++)
		if(S.ch[i]!=T.ch[i])

}