没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
堆分配存储表示法 存储结构: 构建堆来存储字符串,本质上是顺序表 实现代码: #include <stdio> #include <stdlib> #include <string> #define OK 1 #define ERROR 0 #define TRUE 1 #define FALSE 0 #define OVERFLOW -2 #define STR_INIT_SIZE 100 #define STRINCREMENT 10 typedef int Status; typedef struct { char *ch; //空串时指向NULL,非空串时按串长分
资源推荐
资源详情
资源评论
C语言实现数据结构串(堆分配存储表示法)实例详解语言实现数据结构串(堆分配存储表示法)实例详解
堆分配存储表示法
存储结构:
构建堆来存储字符串,本质上是顺序表
实现代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
#define OVERFLOW -2
#define STR_INIT_SIZE 100
#define STRINCREMENT 10
typedef int Status;
typedef struct
{
char *ch; //空串时指向NULL,非空串时按串长分配存储区
int length;
} HString;
Status InitString(HString *T) //初始化字符串
{
//指针指向NULL,长度为0即可
//p.s.申请内存空间的过程在赋值中完成
T->ch = NULL;
T->length = 0;
return OK;
}
Status StrAssign(HString *T, char *p) //字符串赋值
{
//1.判断T是否已有内容,有则释放
//2.判断赋值的内容是否为空,为空则不赋值
//3.根据长度向内存申请空间,遍历赋值给T,长度等于字符串长度
//p.s.在这里赋值不赋