1. 程式人生 > >C語言基礎:指標與陣列

C語言基礎:指標與陣列

        對於上面程式我們需要說明的是int *p = &array[0];表示的是將陣列變數中的第一個元素的地址賦值給指標變數p,而int *p1 = array;的表示的是將陣列變數的值賦值給p指標p21。這兩個語句的結果都是一樣的,這是因為在C語言中陣列變數的值就是這個陣列中第一個元素的地址,也就是這個陣列的首地址。注意:array是一個地址,它表示的是這個陣列的首地址,而&array[0]所表示的是這個陣列的第一個元素所在的地址,也同樣是這個陣列的首地址,所以這兩個地址的值是相同的。 而對於指標型別變數p和p1來說它們所表示的是一個地址,所以我們可以用取陣列元素的方式來對這個指標做取陣列元素操作例如p[0]、p[1]、[2]和p1[0]、p1[1]、p1[2]這樣的語句都是合法的。同理,我們知道 & 符是對變數取地址,而 * 是對指標地址反取變數,所以*p就表示的是陣列中第一個元素變數的值,例如*p的值為0。