欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

c语言顺序表有效元素长度,C语言版数据结构顺序表的问题

发布时间:2025/3/20 编程问答 43 豆豆
生活随笔 收集整理的这篇文章主要介绍了 c语言顺序表有效元素长度,C语言版数据结构顺序表的问题 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

52.Status ListInsert_Sq(SqList *L, int i, ElemType e)

53.{

54.     ElemType *newBase = NULL;

55.     ElemType *q = NULL;

56.     ElemType *p = NULL;

57.

58.     if(i < 1 || i > L->length + 1)

59.     {

60.         return ERROR;                     //边界检查

61.     }

62.     //当前存储空间已满,增加分配

63.     if(L->length >= L->listSize)

64.     {

65.         //realloc()函数是关键点,所以要先明白这个函数的用法

66.         newBase = (ElemType *)realloc(L->elem, (L->listSize + LIST_INCREMENT) * sizeof(ElemType));

67.         if(!newBase)

68.         {

69.             exit(OVERFLOW);               //存储分配失败

70.         }

71.         L->elem = newBase;                //新基址

72.         L->listSize += LIST_INCREMENT;    //增加存储容量

73.     }

74.     q = L->elem + (i-1);                  //q为插入位置

75.     //插入位置及之后的元素右移

76.     for(p = L->elem + (L->length - 1); p >= q; --p)

77.     {

78.         *(p+1) = *p;

79.     }

80.     *q = e;

81.     ++L->length;

82.     return OK;

83.}

第63行 L->length >= L->listSize,顺序表的长度跟它的存储容量能在一起比较吗?不是一个领域的定义吧?不太理解这两者的区别。

ElemType 实际上是Int,为什么不直接写Int?

总结

以上是生活随笔为你收集整理的c语言顺序表有效元素长度,C语言版数据结构顺序表的问题的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。