标题:关于数组下标为负数的情况
只看楼主
wingfeng
Rank: 2
等 级:论坛游民
帖 子:292
专家分:10
注 册:2008-12-12
结帖率:86.67%
 问题点数:0 回复次数:6 
关于数组下标为负数的情况
请问,我在定义一个数组后,输出了下标为负数的,但是没有出错,怎么回事,这个数字是不是随机的??为什么下标能够为负数??
搜索更多相关主题的帖子: 负数 
2010-03-29 21:49
jd205
Rank: 2
等 级:论坛游民
帖 子:139
专家分:69
注 册:2006-10-26
得分:0 
出现负数的情况,成了随机数···

2010-03-29 21:58
amqy
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-3-28
得分:0 
上代码?

猜迷怎么猜啊?
2010-03-29 22:02
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
得分:0 
数组的下标,实际上是数组元素的地址。因此,负下标实际上也是数组使用中的越界问题。

★★★★★为人民服务★★★★★
2010-03-30 08:24
hxlich
Rank: 2
等 级:论坛游民
帖 子:26
专家分:45
注 册:2010-3-28
得分:0 
同意楼上的,看运气了
2010-03-30 10:26
wingfeng
Rank: 2
等 级:论坛游民
帖 子:292
专家分:10
注 册:2008-12-12
得分:0 
好吧,原来是随机的了的啊!
2010-04-01 18:44
mjcswzzc
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-6-18
得分:0 
请看:
int a[3] = {1, 2, 3};
int *p = &a[2];// ok, the value of *p is 3, p points to a[2]
int m = p[-2];// ok, that is m = *(p - 2), p points to a[0]
cout<<m<<endl;// prints: 1

From C++ Primer:
在使用下标访问数组时,实际上是对指向数组元素的指针做下标操作。
2012-06-18 13:47



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-300951-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.077079 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved