[問題] 剛開始學C的新手遇到的問題

作者: NerVGear (Phantom)   2015-12-23 11:40:10
最近在學指標的時候遇到一些問題
先po程式碼
int *p = 0, num[3][3];
srand(time(NULL));
for (p = &num[0][0]; p <= &num[3][3]; p++)
{
*p= rand()%10+1;
p++;
}
for (p = &num[0][0]; p <= &num[3][3]; p++)
{
printf("%d\n", *p);
p++;
}
主要是練習利用指標達成陣列的應用
將儲存的隨機數存到指標所指向的位置
在執行的時候遇到一些問題
1.為什麼整個迴圈只跑了七次而不是九次?
2.當我把陣列改成4*4的時候會發生存取違規,請問這是為什麼呢?
3.為什麼我這樣寫指標的記憶體是位移8? 不是應該是4嗎?
4.想順便請教二維陣列的記憶體配置
謝謝解答Orz
作者: goldman0204 (goldman)   2014-04-09 17:16:00
孫中山看精子往上游?靠杯 打錯 腦子是想小魚逆游?打出精子= =

Links booklink

Contact Us: admin [ a t ] ucptt.com