大家看看我的这个List()函数为什么显示不出来

#include<stdio.h>
#include<math.h>
#include<string.h>
#include<malloc.h>
#include<stdlib.h>
/*函数结果状态代码*/
#define TRUE  1
#define FALSE 0
#define OK 1
#define ERROR 0
typedef int Status;
/*   */
typedef  struct
{
char *ch;
int length;
}HString;
Status StrAssign(HString *T,char *chars)
{
int i,j;
if((*T).ch)
	{
		free((*T).ch);
         (*T).ch=NULL;
     }
i=strlen(chars);
if(!i)
	{
		(*T).ch=NULL;
		(*T).length=0;
	}
else
	{
		(*T).ch=(char*)malloc(i*sizeof(char));
		 if(!(*T).ch)
			{
				printf("OVERFLOW");
				 exit(0);
			 }
		 for(j=0;j<i;j++)
			 (*T).ch[j]=chars[i];
			 (*T).length=i;
	}
   return OK;
  
}
Status StrCopy(HString*T,HString S)
{
	int i;
	if((*T).ch)
		free((*T).ch);
	(*T).ch=(char*)malloc(S.length*sizeof(char));
	if(!(*T).ch)
		{
			printf("OVERFLOW");
		     exit(0);
	     }
	for(i=0;i<S.length;i++)
		(*T).ch[i]=S.ch[i];
	    (*T).length=S.length;
		return OK;
}
Status StrEmpty(HString S)
{
	if(S.length==0&&S.ch==NULL)
		return TRUE;
	else 
		return FALSE;
}
int StrCompare(HString S,HString T)
{
	int i;
	for(i=0;i<S.length&&i<T.length;i++)
		if(S.ch[i]!=T.ch[i])
			return S.ch[i]-T.ch[i];
	return S.length-T.length;

}
int StrLength(HString S)
{
return S.length;
}
Status ClearString(HString *s)
{
	if((*s).ch)
	{
	  free((*s).ch);
	  (*s).ch=NULL;
	}
	(*s).length=0;
	return OK;
}
Status SubString(HString *Sub,HString S,int pos,int len)
{
  int i;
  if(pos<1||pos>S.length||len<0||len>S.length-pos+1)
	  return ERROR;
  if((*Sub).ch)
	  free((*Sub).ch);
  if(!len)
  {
	(*
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值