| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 628 人关注过本帖
标题:看看有啥不对的,感觉怪怪的输出结果
只看楼主 加入收藏
andraw_li
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-8-21
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:10 
看看有啥不对的,感觉怪怪的输出结果


#include "stdio.h"
#include "conio.h"

int main()
{   int s[1]={'\0'} ;

   
int S1[1]={0};
    printf("%d\t%d",s[1],S1[1]);
    getch();
}
输出结果是: 0    -36

如果做改动:
#include "stdio.h"
#include "conio.h"

int main()
{   int s[1]={'\0'} ;

    printf("%d\t",s[1]);
    getch();
}
输出结果是:-36


再改动

int main()
{   int s[1]={'\0'} ;

    int S1[1]={0};
    printf("%d\t",s[1]);
    getch();
}
输出结果是:0

为啥呢?
新人不懂,烦请谅解。



[ 本帖最后由 andraw_li 于 2012-8-23 15:39 编辑 ]
搜索更多相关主题的帖子: include 
2012-08-23 15:35
andraw_li
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-8-21
收藏
得分:0 
为啥只有看的,没有回得啊啊啊啊啊啊 啊啊啊!
新人自学C,冰天雪地裸体跪求啊
2012-08-23 16:01
silent_world
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:258
专家分:1138
注 册:2011-9-24
收藏
得分:5 
呵呵,显示什么只有内存条知道。
你不知道,我也不知道。
不过,我建议你打印s[0],看看是什么结果。
2012-08-23 16:07
andraw_li
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-8-21
收藏
得分:0 
回复 3楼 silent_world
呵呵,谢谢, 经过你提醒我知道问题出在哪里了。
原来S[1],打印的是第二个字符,我一直以为是第一个字符。

自学就是有问题啊,很多东西都不是很清楚。

非常感谢。
2012-08-23 16:15
轮椅之星
Rank: 2
等 级:论坛游民
帖 子:18
专家分:42
注 册:2012-8-16
收藏
得分:0 
错了吧,你不觉得该打印是s[0]跟S[0]吗,你打印S[1]是啥用意啊
2012-08-23 18:37
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 4楼 andraw_li
请学习语文,书上讲到数组时肯定讲了数组下标的范围,没理解吧

总有那身价贱的人给作业贴回复完整的代码
2012-08-23 18:43
andraw_li
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-8-21
收藏
得分:0 
回复 6楼 embed_xuel
我看的是the c programing language,你要是看过就知道,他前面是不讲这些的,我是一面看,一面调试的。
我的语文还不差,还是明白下标的。
2012-08-24 09:21
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 7楼 andraw_li
虽然我经常黑谭老,但他的书还是适合入门看的,你现在看的那本不合适

总有那身价贱的人给作业贴回复完整的代码
2012-08-24 10:55
蓝色天际2012
Rank: 1
等 级:新手上路
帖 子:3
专家分:1
注 册:2012-8-24
收藏
得分:0 
初始化时候只初始化了第一个值,而访问的死后访问的是第二个值,第二个未初始化。导致访问未知的结果。
2012-08-24 11:54
蓝色天际2012
Rank: 1
等 级:新手上路
帖 子:3
专家分:1
注 册:2012-8-24
收藏
得分:0 
int main(){
    char s[] = {'\0'};
    printf("%c\n",s[0]);
}
2012-08-24 11:57
快速回复:看看有啥不对的,感觉怪怪的输出结果
数据加载中...
 
   



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

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