C++ 问题..

来源:百度知道 编辑:UC知道 时间:2024/06/04 08:42:18
#include <iostream.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>

enum BOOL{True,False};

typedef struct{
char *ch;
int length;
}HString;

BOOL CreatString(HString &S,char *chars);
BOOL SubString(HString &T,HString S,int pos,int len);
BOOL StrInsert(HString &S,int i,HString T);
BOOL StrDelele(HString &T,HString S,int i,int len);

BOOL CreatString(HString &S,char *chars){
if(S.ch)
free(S.ch);
for(int i=0,c=strlen(chars);c;++i,--c);
if(!i){
S.ch=NULL;
S.length=0;
}
else{
if(!(S.ch=(char *)malloc(i*sizeof(char)))){
cout<<"OVERFLOW"<<endl;
return False;
}
for(i=0;i<strlen(chars);i++){
S.ch[i]=chars[i];
S.length++;
}
}
cout<<"Creating's OK"<<endl;
return True;
}

BOOL SubStrin

这是在我的编译器上的代码:

#include <iostream>

#include <string.h>

#include <stdio.h>

#include <stdlib.h>

using namespace std;

enum BOOL {True,False};

typedef struct {

  char *ch;

  int length;

 }HString;

BOOL CreatString(HString &S,char*chars);

BOOL SubString(HString &T,HString S,int pos,int len);

BOOL StrInsert(HString &S,int i,HString T);

BOOL StrDelele(HString &T,HString S,int i,int len);

BOOL CreatString(HString &S,char*chars)

{

 if (S.ch)

  free(S.ch);

 int i=0,c=0;

 c=strlen(chars);

 for (i=0,c=strlen(chars);c;++i,--c);

 if (!i) {

   S.ch=NULL;