文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
6.4.4 指针的关系运算
由于数组中的元素在内存中是连续存储的,首元素的内存地址相对最小,最后一个元素的内存地址相对最大,因此,我们可以使用关系运算符对指向数组元素的指针进行关系运算,通过内存地址的比较,来获取彼此所指向的数组元素的前后位置信息。
关系运算的结果为布尔(Boolean)值,即“真”或“假”,通常“真”用整数 1 表示,“假”用整数 0 表示。关于指针的关系运算,如表 6.1 所示。
表 6.1 指针的关系运算
【 例 6-2 】编写程序,使用指针,逆序打印数组中的所有元素。
代码如下:
代码中,定义了指针变量 pi,并通过“a + 4”获得第 5 个数组元素的内存地址,将其初始化给指针变量 pi。在 while 循环中,条件表达式“pi >= a”检查指针 pi 的内存地址是否大于等于数组首元素的内存地址,若为真,执行循环体,通过解引用打印输出 pi 所指向的数组元素值,并使用“––pi”让指针向后移动,即向数组首元素的位置移动。直至首元素打印输出后,指针再次向后移动之后,指针的内存地址小于了数组首元素的内存地址,导致循环条件不成立,结果为假,while 循环结束。
运行程序,结果如下:
50 40 30 20 10
最后再强调一下,对于关系运算中的两个指针,都应当为指向同一数组中的元素的指针,否则运算的结果毫无意义。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论