| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 747 人关注过本帖
标题:关于数组的问题?
只看楼主 加入收藏
jabyshen
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2007-2-16
收藏
 问题点数:0 回复次数:10 
关于数组的问题?
#include<stdio.h>
main()
{
char s[5];
printf("s=%p\ns[0]=%p",s,&s[0]);/*两个地址一样,说明数组名是数组第一个元素的地址*/
}
==============
#include<stdio.h>
main()
{
char s[5]=“china";
printf("%s",s);/*说明数组名是数组第一个元素的地址,所以直接用数组名就可以*/
}
===========问题来了。
#include<stdio.h>
main()
{
int s[5]={1,2,3,4,5};
printf("%d",s);/*既然数组名是数组第一个元素的地址,那为什么这里不是打印第一个元素,而是报错呢?*/
} /*而是必须用s[0]呢,是不是只有字符数组才可以?*/
================
#include<stdio.h>
main()
{
int s[6];
scanf("%d",s);/*请问这里输入的是不是作为数组的第一个元素*/
printf("%d",s[0]);
}

[此贴子已经被作者于2007-4-4 20:49:43编辑过]

搜索更多相关主题的帖子: include 元素 
2007-04-04 12:14
dragonfly
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:1024
专家分:0
注 册:2006-3-20
收藏
得分:0 
scanf("%d",s),s代表地址
建议lZ看一下scanf和printf函数的原型

2007-04-04 12:22
YANGDAN123
Rank: 1
等 级:新手上路
帖 子:97
专家分:0
注 册:2007-1-16
收藏
得分:0 
第一个问题答案是肯定的
第二个问题嘛
你将字符与数字类型数组的输入输出弄混了,他们是不一样的,不能象你这么写,如果要实现,只能用for!

我将用我全部的时间去寻找我生命和灵魂的唯一伴侣,得之,我幸,不得,我命。
2007-04-04 12:33
天使有泪
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2007-4-3
收藏
得分:0 
int s[5]={1,2,3,4,5};
printf("%d",s);/*既然数组名是数组第一个元素的地址,那为什么这里不是打印第一个元素,而是报错呢?*/
} /*而是必须用s[0]呢,是不是只有字符数组才可以?*/

数组名是数组第一个元素的地址阿
应该加&

2007-04-04 20:12
stnlcd
Rank: 1
等 级:新手上路
帖 子:177
专家分:1
注 册:2004-11-21
收藏
得分:0 
字符串有结束标志'\0',所以可以连续的输出,对于一个int型的数组,它的结束标志是什么?所以,假如你是一位printf函数的编写者,只能特殊对待字符串数组,字符串的这种输出方式符合我们使用的习惯和思维方式,而不可能将所有类型的数组都用一句printf加以输出。
如果把数组的名字看作是数组第一个元素的地址,我认为这样有失数组在内存中表达的整体性。数组的名字也就是数组的首地址,数组就是在内存中开辟的连续区域,数组的大小表示了数组在内存中存放的界限。

[此贴子已经被作者于2007-4-5 10:50:37编辑过]


要让一个男人破产,请给他一架相机,要让一个男人倾家荡产,请给他一架望远镜。
2007-04-05 10:46
wangleziji
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-4-4
收藏
得分:0 
5楼回答经典!
2007-04-05 19:38
xiaohaima
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2007-3-24
收藏
得分:0 

地址和元素没分清 。


电脑桌旁的小虫
2007-04-05 19:44
wangjianguo
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-4-6
收藏
得分:0 
2007-04-06 20:47
wangjianguo
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-4-6
收藏
得分:0 
2007-04-06 20:47
wangjianguo
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-4-6
收藏
得分:0 
2007-04-06 20:48
快速回复:关于数组的问题?
数据加载中...
 
   



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

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