数据结构的串有三种表示方式:定长顺序存储表示,堆分配存储表示,块链存储表示。其中较常用的是前两种表示方式。下面讨论第一种表示方式。
//---------------------------------------------------------------------------------------------
#define MAXSTRLEN 255 //用户可在255以内定义最大串长
typedef unsigned char SString[MAXSTRLEN+1]; //0号单元存储串的长度
//---------------------------------------------------------------------------------------------
(ps:这个MAXSTRLEN定义的实在是太有水平了,char的存储长度为一个字节,8个位,可以表示的最大数值是(2^9-1)=255,所以可把串的长度放到SString[0]中,而不会出错)
以下代码实现用文件初始化串变量,将两个串连接成一个串,求一个串的字串。
const int MAXSTRLEN=255;
typedef unsigned char SString[MAXSTRLEN+1];//0号单元存储串的长度
Status CreateFile(string filename,int charnum,char c){//创建一个名为filename的文件,其中含有charnum个字符c
ofstream outfile(filename.c_str());
if(!outfile) return ERROR;
for(int i=0;i<charnum;++i)
outfile<<c;
return true;
}
Status InitSStringWithFile(SString &s,string filename){
ifstream infile(filenam

本文探讨数据结构中串的定长顺序存储表示,常见于C++编程。通过MAXSTRLEN常量定义最大串长为255,使用unsigned char数组SString存储,其中0号单元保存串长度。内容包括文件初始化串、串连接和查找子串的操作。
最低0.47元/天 解锁文章
1889

被折叠的 条评论
为什么被折叠?



