C语言数组的赋值

[复制链接]
查看11 | 回复5 | 2011-3-19 07:51:33 | 显示全部楼层 |阅读模式
pk[2].因为〔〕的优先比*号高,所以代表的是数组元素p[0]-p[2]的地址。A如果是A的话,应该改成*pk[2]而不是*pk[3]B是对的 pk[0]=&k[1][2]就是一个元素的地址C其实和A一样,k[0]代表首行地址,相当于kD pk[1]代表是一个数组的地址,而不是行地址所以选 B 注意区别(*pk)[3]如果是这样的话,分别表示(*pk)[0]-(*pk)[2],是一个数组,数组里三个元素都是地址。此时pk=k就可以(*pk)[3]整个表示的是第一行三个列元素的地址不清楚可以hi我...
回复

使用道具 举报

千问 | 2011-3-19 07:51:33 | 显示全部楼层
我来解释吧···因为这是个存储问题 也涉及指针问题你的本意是0 3 80 9 0 吧 但是计算机存储是入栈出栈方式的那么它可能会认为是{0 0 0 0}
{ 3 8 0 9 }{0 3 0}
{ 8 0 9}{0 3 8}
{0 9 0} {0 3 8 0}
{9 0...
回复

使用道具 举报

千问 | 2011-3-19 07:51:33 | 显示全部楼层
二维数组的第一维可以不指定,但是第二维必须指定。你应该这么写:float a[][3]={{0,3,8},{0,9}}这样就没有问题了。...
回复

使用道具 举报

千问 | 2011-3-19 07:51:33 | 显示全部楼层
定义多维数组时,最后一维必需给出。float a[][3]={{0,3,8},{0,9}};//这样才可以,从初始化列表中,我们可以知道是3*2的数组。...
回复

使用道具 举报

千问 | 2011-3-19 07:51:33 | 显示全部楼层
不知道你到底有几列!也就是不能确定你数组的数目!可以说它是6个或八个。。。或2n个(你>=3)...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行