串的存储结构:
(1)定长顺序存储表示:
#define MaxSize 255
typedef struct{
char ch[MaxSize]; //给每个串变量分配一个定长数组
int length; //串的实际长度
}SString;
超过预定义长度的串值会被舍去,称为截断。
(2)堆分配存储表示:
//堆分配存储表示
typedef struct{
char *ch; //动态分配内存,根据串长进行分配
int length; //串的长度
};
(3)块链存储方式:
类似于单链表存储,每个结点称为一个块。如果一个结点中放一个字符,那么优点是操作方便,缺点是串的存储密度低。所以解决方法是可以在一个结点中放入多个字符来克服这种缺点。
串的基本操作:
之后来补。