Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> C語言指針和數組知識總結(下)

C語言指針和數組知識總結(下)

編輯:關於Android編程

一、數組指針: 數組指針就是一個指針,只不過它指向的是一個數組.可以通過如下方式來定義     typedef int Array[5]; //數組類型 Array* m;      //數組定義 還有一種更為簡潔的寫法: int (*m)[10];         二、指針數組: 所謂的指針數組就是一個數組,只不過數組元素是指針,可以通過如下方式來定義     int* m[10];     三、數組指針的實例      
#include <stdio.h>  
  
  
int main()  
{  
  int a[5] = {1,2,3,4,5};  
  typedef int(IArray5)[5];  
  IArray5* n = &a;   
  int (*m)[5] = &a;  
  
  
  for(i = 0; i < 5;i ++)  
  {  
    printf("%d \n",a[i]);  
  }  
    
  for(i = 0; i < 5;i ++)  
  {  
    printf("%d \n",(*m)[i]);  
  }  
  for(i = 0; i < 5;i ++)  
  {  
    printf("%d \n",(*n)[i]);  
  }    
  
  
}  

 

  分析打印結果如下         四、所謂二維數組     1.C語言中不存在所謂的二維或者更高維次的數組,因為在內存中都是線性分布的,所以都是一維數組. 二位數組的數組名代表的就是一個數組指針,只不過這個指針指向的是一個數組. 2.二維數組的一個實例  
#include <stdio.h>  
  
  
int main()  
{  
  int array[5][5] = {  
    11,12,13,14,15,  
    16,17,18,19,20,  
    21,22,23,24,25,  
    26,27,28,29,30,  
    31,32,33,34,35  
    };  
    
  int* p1 = (int*)(&array + 1);  
  int* p2 = (int*)(*(array + 1) + 6);  
    
  printf("result = %d, %d, %d, %d ,%d  \n",(*(*array)),(*(*array) + 4),(*(*(array + 4))),p1[-4],p2[-1]);  
      
}  

 

   
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved