串:由零个或多个字符串组成的有限序列,又叫字符串。(串中的元素都是字符)
零个字符的串称为空串,它的长度为零,可以直接用两双引号“….”表示。
空格串:只包含空格的串,有内容长度,而且可以不止一个空格。
串中任意个数的连续字符组成的子序列称为该串的子串,包含子串的串为主串。子串在主串中的位置就是子串的第一个字符在主串中的序号。
串的比较:
串的比较是通过组成串的字符之间的编码来进行,而字符编码指字符在对应字符集中的序号。
串的抽象数据类型:
串和线性表的区别:线性表更关注的是单个元素的操作,比如查找一个元素,插入或删除一个元素,但串中更多的是查找子串位置,得到指定位置子串,替换子串等操作。
串的顺序存储结构:串值的存储空间可在程序执行过程中动态分配。在计算机中有个“堆”的自由存储区,可由C语言的动态分配函数malloc( )和free( )来管理
串的链式存储结构:在考虑到空间浪费的问题上,所以一个结点可以存放一个字符,也可存放多个字符,最后一个结点若是未被占满时,用“#”或其他非串值字符补全。