大佬教程收集整理的这篇文章主要介绍了c – 索引与指针,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我的问题是,在需要索引的情况下是否使用指针进行交叉引用甚至是值得的?
仅当元素的大小不是2的幂时,即当它不是指针时,或者在大多数系统上的某种标准类型时,该操作才需要除法.使用比特移位除以2的幂,这是非常便宜的.
这里适用相同的逻辑,除了编译器向左移动而不是向右移位.
在没有分析的情况下计算cpu周期是过早优化的一个例子 – 在开始设计时要考虑的一件坏事.
更重要的考虑因素是索引更加健壮,因为它们经常在数组重新分配后继续存在.
考虑一个例子:假设有一个数组在向后添加元素时动态增长,该数组的索引和指向该数组的指针.你向数组添加一个元素,耗尽它的容量,所以它现在必须增长.你调用realloc,并获得一个新的数组(如果在“官方”结束后有足够的额外内存,则获得一个旧数组).你持有的指针现在无效;但是,索引仍然有效.
以上是大佬教程为你收集整理的c – 索引与指针全部内容,希望文章能够帮你解决c – 索引与指针所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。