有关c语言的问题

数组长度和数组占的字节数是一样的吗?charx[]="12345";chary[]=('1','2','3','4','5');x和y数组的长度是多少?所占字节数是多少?... 数组长度和数组占的字节数是一样的吗?
char x[]="12345";
char y[]=('1','2','3','4','5');
x和y数组的长度是多少?所占字节数是多少??
展开
 我来答
匿名用户
2009-05-30
展开全部
不一定,如果数组元素的数据类型就是占用一个字节,那就是一样的,比如char类型。如果不是占用一个字节,那么数组占用的字节数就是 数组长度*数组元素占用的字节数。

**************************************************

char x[]="12345";

由于12345是用双引号括着的,所以这是一个字符串,所以程序会自动在末尾加一个结束标志'\0',所以这一个char类型的数组中共有6个字符,占用6字节。

char y[]=('1','2','3','4','5');
严格地说,这一句是错误的,初始化应使用{}而不是()。

这个数组中保存了5个字符,所以占用5字节。
wanfustudio
2009-05-30 · TA获得超过1万个赞
知道大有可为答主
回答量:5513
采纳率:100%
帮助的人:3716万
展开全部
数组的长度是数组元素的个数
数组的字节数就是所有元素占得内存大小

如:
int a[4];
长度4个
字节 4 * sizeof(int) = 16
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
聊迹生8884
2009-05-30 · TA获得超过376个赞
知道小有建树答主
回答量:141
采纳率:0%
帮助的人:84.8万
展开全部
x数组长度5,占字节6,因为后便自动加上了一个\0
y数组长度5,占字节5
y初始化的书写错误,应把()改为{}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
waddy0518
2009-05-30 · 超过17用户采纳过TA的回答
知道答主
回答量:48
采纳率:0%
帮助的人:0
展开全部
数组存取字符串时,会在末尾加”\0“作为结束标志,故第一个x=6,所占字节为6
第二个y=5,所占字节为5
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式