文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
为什么数组从 0 开始
数组变量可以用作指针,这个指针指向数组的第一个元素,也就是说除了方括号表示法,还可以用*运算符读取数组的第一个元素,像这样:
地址只是一个数字,所以可以进行指针算术运算,比如为了找到存储器中的下一个地址,可以增加指针的值。既可以用方括号加上索引值 2 来读取元素,也可以对第一个元素的地址加 2:
printf("第三单: %i 杯\n", drinks[2]);printf("第三单: %i 杯\n",
*(drinks + 2));
总之,表达式 drinks[i] 和*(drinks + i) 是等价的,这解释了为什么数组要从索引 0 开始,所谓索引,其实就是为了找到元素的地址单元,指针需要加上的那个数字。
磨笔上阵
使用指针算术运算的魔力修复一颗破碎的心,下面这个函数将跳过文本消息的前六个字符。
磨笔上阵解答
你用指针算术运算的魔力修复了一颗破碎的心,下面这个函数跳过了文本消息的前六个字符。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论