我是新來的C語言編程,並一直在尋找這個問題的幾天二維數組...指針在C
int arr[][2]={11,22,33,44,55,66};
int (*ptr)[2]=&arr[1]; //line a
int (*ptr1)[2]=arr[1]; //line b
對於線(一)編譯器沒有問題,但是對於線(B )它給出ERROR-cant convert int* to int[2]*
現在&arr[1]
和arr[1]
具有相同的大小(當我檢查sizeof運算符時)。
那麼請幫助我瞭解究竟發生了什麼? arr[1]
和&arr[1]
有什麼區別?謝謝!
看到這裏,它應該幫助: http://stackoverflow.com/questions/2094666/pointers-in-c-when-to-use-the-ampersand-and-the-asterisk – pez 2014-09-26 01:52:00