next up previous contents
Next: 指標(pointers) Up: 陣列 Previous: 從函式回傳陣列   Contents

陣列位址指標

  1. 如下例子,age[10] 是一個 10 元素的整數陣列,arg 就表示這個陣列第一個元素儲存的位址,也就是 &age[0],可以宣告一個 pointer 變數 p 指到這個位址。
    int *p;
    int age[10];
    
    p = age;
    
  2. 範例
    #include <stdio.h>
    
    int main ()
    {
       /* an array with 5 elements */
       double balance[5] = {1000.0, 2.0, 3.4, 17.0, 50.0};
       double *p;
       int i;
    
       p = balance;
     
       /* output each array element's value */
       printf( "Array values using pointer\n");
       for ( i = 0; i < 5; i++ )
       {
           printf("*(p + %d) : %f\n",  i, *(p + i) );
       }
    
       printf( "Array values using balance as address\n");
       for ( i = 0; i < 5; i++ )
       {
           printf("*(balance + %d) : %f\n",  i, *(balance + i) );
       }
     
       return 0;
    }
    


2015-01-16