| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 668 人关注过本帖
标题:小问题,帮忙解决一下
只看楼主 加入收藏
yxiangyxiang
Rank: 3Rank: 3
来 自:/\/\/\/\/
等 级:论坛游侠
帖 子:130
专家分:186
注 册:2012-1-29
结帖率:100%
收藏
 问题点数:0 回复次数:13 
小问题,帮忙解决一下
#include "stdio.h"
void main()
{
    int    a[5]={1, 2, 3, 4, 5}, *p, i;
   
    for( p=a; p<p+5; p++ )
        printf("%d  ", *p);
    p = a;
    printf("\n%d\n", *(p+5));  
}
图片附件: 游客没有浏览图片的权限,请 登录注册
为什么结果不是  
            

[ 本帖最后由 yxiangyxiang 于 2012-2-25 14:37 编辑 ]
搜索更多相关主题的帖子: include void 
2012-02-25 14:36
墨清扬
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:294
专家分:817
注 册:2011-10-4
收藏
得分:0 
p自增了之后,p+5还是比p大啊……应该是p<a+5

酱油实习生
2012-02-26 00:05
清微御宇
Rank: 6Rank: 6
来 自:开封
等 级:侠之大者
威 望:2
帖 子:318
专家分:497
注 册:2012-1-15
收藏
得分:0 
回复 2楼 墨清扬
感觉for语句会一直循环,为什么系统还是输出数呢?

Stay hungry , Stay foolish!
2012-02-26 10:39
wanglezeng
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-2-21
收藏
得分:0 
前面会输出*p[a]的值。但是会无限循环,所以就越界了。以后就输出随机值了。
2012-02-26 10:51
天天涯涯
Rank: 4
等 级:业余侠客
帖 子:215
专家分:267
注 册:2011-10-17
收藏
得分:0 
for( p=a; p<p+5; p++ )改为for( p=a; p<a+5; p++ )
2012-02-26 10:58
王逢
Rank: 2
等 级:论坛游民
帖 子:30
专家分:32
注 册:2011-10-7
收藏
得分:0 
p<p+5是恒成立的,所以就是一个死循环啊,要改成p<a+5
2012-02-26 11:50
xinyuanyuan
Rank: 2
等 级:论坛游民
帖 子:12
专家分:10
注 册:2012-2-14
收藏
得分:0 
for( p=a; p<p+5; p++ )
        printf("%d  ", *p);
这个是一个死循环(p<p+5恒成立),没循环一次都会输出一个值,当p指向a[4]的下一位以后,输出的是随机值。
按我的理解,程序是不会执行下面语句的:p = a; printf("\n%d\n", *(p+5));  可是系统确输出一个值-20。
 for( p=a; p<p+5; p++ )//这里p<P+5改为p<a+5;printf("%d  ", *p); 这个输出数组a的每一个元素。
p = a; printf("\n%d\n", *(p+5));  这里的p=a表示p=&a[0],(p+5)指向的是a[4]的下一位,是一个不确定的值,系统随机生成。

2012-02-26 12:46
纯情小郎君
Rank: 2
等 级:论坛游民
帖 子:84
专家分:80
注 册:2011-12-12
收藏
得分:0 
虽然是死循环,但是也会输出结果,可是数组空间长度不是6吗?为毛会输出超过空间长度的数?唉唉,我基础不扎实啊
楼上的,那是确定的值哦

老师说,2B是通向梦想的第一步
2012-02-26 22:12
玉面狂龙
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:82
专家分:156
注 册:2012-2-23
收藏
得分:0 
跟高手学知识
2012-02-26 22:44
yxiangyxiang
Rank: 3Rank: 3
来 自:/\/\/\/\/
等 级:论坛游侠
帖 子:130
专家分:186
注 册:2012-1-29
收藏
得分:0 
回复 2楼 墨清扬
知道了
2012-02-27 12:59
快速回复:小问题,帮忙解决一下
数据加载中...
 
   



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

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