本篇博客中都是带头结点的串。
1.链式串的定义
这里的数据域是4个字节,是为了节省空间。
typedef struct StringNode{
char ch[4]; //按串长分配存储区,ch指向串的基地址
struct StringNode* next;
} StringNode,*String;
2.初始化
bool StrInit(String &S)
{
S = (StringNode*)malloc(sizeof(StringNode)); //开辟空间
if (S == NULL)
return false;
S->next = NULL;
return true;
}
3.赋值为0
将数据域中的元素全部初始化为0
bool StrEmpty(String& S)
{
for (int i = 0; i < 4; ++i)
{
S->ch[i] = 0;
}
return true;
}
4.赋值操作
String StrAssign(String &S)
{
StringNode* s, * r