打印

指针问题

[复制链接]
992|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pkat|  楼主 | 2012-7-15 22:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
xsgy123| | 2012-7-15 23:16 | 只看该作者
指针就是地址
需要得到内存地址中的值,前面加“*”,你的问题,我没看懂。。。
如果光对地址加1,减1基本上跑到内存中未知地址里,这很容易造成程序崩溃。

使用特权

评论回复
板凳
hsbjb| | 2012-7-15 23:25 | 只看该作者
对于一个数组int arr[] = {1, 2, 3, 4, 5, 6};
楼主需要弄清楚&arr、arr和&arr[0]这三者之间的异同。
从本身的值来说,它们都是一样的,但含义却不同:
&arr表示整个数组的首地址,当&arr + 1的时候,其中的1就相当于1 * sizeof(arr)
arr和&arr[0]都表示数组第一个元素的地址,所以它们加1的时候,就相当于加1 * sizeof(数组元素的类型),在这个例子中,就是1 * sizeof(int)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

196

主题

2726

帖子

0

粉丝