c语言中,链表中一个数据的地址加一能对应下一个数据的地址吗?如果不能对应,那为什么数组的可以
2条回答 默认 最新
- CSDN专家-link 2022-11-21 20:39关注
当然不能了。
链表的特点就是每个节点的地址是不要求不连续的(如果你用静态数组空间作为链表节点空间那可能是连续的,用malloc分配的节点空间一般都是不连续的),所以链表节点地址加1不一定是下一个节点的地址。如果连续直接就用数组就行了。
malloc动态分配空间,只是找一块满足大小的内存块就可以了(当然还有分配策略),然后前一个节点有内存块记录下一个节点的内存地址,从而形成“链条”,所以都是用next这样的下一个节点地址来找到下一个节点的本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 求指导ADS低噪放设计
- ¥15 CARSIM前车变道设置
- ¥50 三种调度算法报错 有实例
- ¥15 关于#python#的问题,请各位专家解答!
- ¥200 询问:python实现大地主题正反算的程序设计,有偿
- ¥15 smptlib使用465端口发送邮件失败
- ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
- ¥15 对于squad数据集的基于bert模型的微调
- ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
- ¥20 steam下载游戏占用内存