如何将数组赋给指针?

[复制链接]
查看11 | 回复5 | 2012-2-14 23:11:10 | 显示全部楼层 |阅读模式
原题中,p=ref ,p=&ref[0] 均正确,规范,含义完全相同。因此 marilynbkun 回答完全正确;lesey1234 回答有误。只是这样写不太符合规范 因为在多维数组里面p=&ref[0][0]那么p++是引动一个int的位置, 若p=*ref,这样p++移动时按照行来移动了 指向下一行 。 原因是:ref为多维数组时,int * p ;p=*ref,p++ 也是只移动sizeof( int), 这是由int * p决定的,与ref定义无关,请注意下列定义的区别:(1)int ref[1][4]={{8,4,3,2}}; int * p=*ref;(2)intref[1][4]={{8,4,3,2}};...
回复

使用道具 举报

千问 | 2012-2-14 23:11:10 | 显示全部楼层
可以的,都是表示首地址 只是这样写不太符合规范 因为在多维数组里面 p=&ref[0][0]那么p++是引动一个int的位置 若p=*ref,这样p++移动时按照行来移动了 指向下一行...
回复

使用道具 举报

千问 | 2012-2-14 23:11:10 | 显示全部楼层
其实p=ref和p=&ref[0]是等价的,都是指针指向数组首地址;注意:数组名表示数组首地址!...
回复

使用道具 举报

千问 | 2012-2-14 23:11:10 | 显示全部楼层
p确实等于&ref[0]楼主想表达什么意思?...
回复

使用道具 举报

千问 | 2012-2-14 23:11:10 | 显示全部楼层
ref为数组首地址,也=&ref[0],也可以用给指针数组赋值的方法。...
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行