在C语言中数组和链表有什么区别

两种都属于数据结构的一种 , 它们的区别如下所示:
1、逻辑结构:数组必须事先定义固定的长度(元素个数) , 不能适应数据动态地增减元素个数 , 当数据增加时 , 可能会超出原先定义的元素个数;当数据减少时 , 会造成内存浪费 。链表动态地进行存储分配 , 可以适应数据增减 , 且可以方便插入、删除数据 。
【在C语言中数组和链表有什么区别】2、内存分配:C语言有内存四区 , 分别为堆区 , 栈区 , 代码区 , 静态区 。定义数组时计算机会自动在栈区中申请内存 , 比较方便 , 但自由度小 。链表从堆中申请内存且必须手动申请 , 并且手动释放内存 , 对于程序员来说比较操作

    推荐阅读