[問題] 關於記憶體位置和記億體位置之值

看板C_and_CPP (C/C++)作者 (GG5566)時間15年前 (2010/11/24 19:57), 編輯推噓0(006)
留言6則, 4人參與, 最新討論串1/2 (看更多)
遇到的問題: (題意請描述清楚) 各位大大好 char string[]="Input an integer"; int p1=(int) &string; // p1設定成為string的記憶體所在位置的值 printf("%s\n",p1); // ^^這樣寫同樣可以印出字串string -------------------------- 以上為程式碼, 但小弟我一直無法接收p1印出來為字串, 因為這行 int p1=(int) &string; 的意思是把string的記憶體位置值傳給p1 所以p1應該是為記億體位置而不是字串.. 謝謝您看完這個問題...<(_ _)> 希望得到的正確結果: p1為記憶體位置 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) windows 有問題的code: (請善用置底文標色功能) p1=(int) &string; 不是記憶體位置 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.195.4.173

11/24 20:02, , 1F
&string[0]
11/24 20:02, 1F
小弟不懂,這是什麼意思? ※ 編輯: g56 來自: 123.195.4.173 (11/24 20:09)

11/24 20:16, , 2F
printf("%d\n",p1);
11/24 20:16, 2F

11/24 20:33, , 3F
printf("%x"\n", p1);
11/24 20:33, 3F

11/24 20:34, , 4F
printf("%x\n", p1);
11/24 20:34, 4F

11/24 20:37, , 5F
p1一直都是存位址 只是你printf的format要對啦~XDDDD
11/24 20:37, 5F

11/24 20:42, , 6F
sizeof(int) 可不一定都等於 sizeof(int*) 喔~
11/24 20:42, 6F
我搞懂了,謝謝以上回我的...^________^ ※ 編輯: g56 來自: 123.195.4.173 (11/24 21:24)
文章代碼(AID): #1CxFsrSX (C_and_CPP)
文章代碼(AID): #1CxFsrSX (C_and_CPP)