程式語言 陣列與指標問題 - 考試

Table of Contents

#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

麻煩解惑~~謝謝:)

--

All Comments

Olive avatarOlive2015-11-05
不管是+6+7+8都是不可預期的值,只是剛好+7是0
Brianna avatarBrianna2015-11-05
你的邏輯?
Gary avatarGary2015-11-07
因為用軟體跑跟線上平臺跑+7結果不一樣 怎麼知道這麼巧Q
Wallis avatarWallis2015-11-11
謝m大