串的顺序存储

该博客介绍了一种用C语言实现的顺序存储结构HStr,包括初始化、赋值、打印、拷贝、连接、比较、插入、查找子串、删除子串等操作。通过示例代码展示了如何使用这些操作进行字符串处理。
摘要由CSDN通过智能技术生成

/* 串的顺序存储 */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

typedef struct HStr {
char * ch; // 字符的存储单元
int length; // 串的长度
} HStr,*PHStr;
typedef enum Status {
ok = 1,
Error = 0,
} Status;


/*
* 初始化
* 步骤:
* 令串的存储单元为空
* 令串的长度等于 0
*/
void InitStr(PHStr str)
{
str->ch = NULL;
str->length = 0;
}


/*
* 赋值
* 步骤:
* 首先获取要插入的字符串长度
* 为串存储单元申请空间
* 遍历字符串,将每个字符插入线性表中
* 修改线性表长度
*/
Status AssigStr(PHStr str,char * chars)
{
int len = strlen(chars);
int i = 0;

if(!len) return Error;
InitStr(str);

str->ch = (char *) malloc(sizeof(char) * len);
if(!str->ch)
{
printf("空间申请失败!\n");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值