亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

指針和數組

下面的代碼怎么在編譯器中是有錯的

#include?<stdio.h>
int?main()
{
????int?m=1;
????int?*p=&m;
????int?n=2;
????p+1=&n;
????printf("%d\t%d\n",*p,*(p+1));
????return?0;
}

指針和數組能不能互相替換比如直接在上文printf里寫p[0],p[1]

或者直接用p+1代替數組p[1]

如果不可以要怎么聲明才行(有時候要用數組有時候要用指針怎么替換)

正在回答

4 回答

好吧 我現在懂了 用p[1]=n;

0 回復 有任何疑惑可以回復我~

那怎么把數據放到p+1的地址里呢

0 回復 有任何疑惑可以回復我~

若有錯誤或遺漏,請各位同學糾正或補充,多多見諒

0 回復 有任何疑惑可以回復我~
#include?<stdio.h>
int?main()
{
????int?m?=?1;
????int?n?=?2;
????int?*p;
????p?=?&m;
????printf("%d\n%d\n%d\n%d\n%d\n",*p,*p+1,*(p+1),p,p+1);
????return?0;
}

http://img1.sycdn.imooc.com//560e7acb0001d91c06770442.jpg

*(p+1)先將指針右移一位,再取所指向變量的值,但是內存無值,給了個隨機數;

p是存放的內存地址;

p+1是p所存放的內存地址再加4個字節,就從12變16了。一個整型占4個字節。

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Linux C語言指針與內存
  • 參與學習       116652    人
  • 解答問題       262    個

指針-C語言的核心,代領大家對c語言有更加深刻的理解

進入課程

指針和數組

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號