作者hsin820 (sheeel)
看板Examination
標題[問題] 程式語言 陣列與指標問題
時間Mon Nov 2 17:00:36 2015
#include<stdio.h>
int main()
{
int A[2][3] = {{2,3,5},{7,11,13}};
int *p1 = &A[0][0];
printf("%d",*(p1+7));
return 0;
}
想請問各位
能解釋 *(p1+7) 印出的結果為0是為什麼嗎?
用自己電腦compile結果是0
但是用線上平台的結果也同樣是0
請問這是巧合嗎?
因為*(p1+6)、*(p1+8)都是亂數
怎麼*(p1+7)就是0
麻煩解惑~~謝謝:)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.226.147.194
※ 文章網址: https://www.ptt.cc/bbs/Examination/M.1446454839.A.DFF.html
→ malowda: 不管是+6+7+8都是不可預期的值,只是剛好+7是0 11/02 21:57
推 morris1661: 你的邏輯? 11/03 09:59
→ hsin820: 因為用軟體跑跟線上平臺跑+7結果不一樣 怎麼知道這麼巧Q 11/08 07:55
→ hsin820: 謝m大 11/08 07:56