指針的強大功能,,,,簡直牛逼!!!ios
#include<iostream> #include<cstdio> #include<map> using namespace std; void func1(int arr[][5])//傳遞數組,需生命數組第二維的大小 { for(int i=0;i<5;i++){ for(int j=0;j<5;j++)cout<<arr[i][j]<<" "; cout<<endl; } } void func2(int (*arr)[5])//傳遞數組指針,仍需生命第二維的大小 { for(int i=0;i<5;i++){ for(int j=0;j<5;j++)cout<<arr[i][j]<<" "; cout<<endl; } } void func3(int *arr)//傳遞指針,指針指向首元素便可,但維數組的形狀需用其餘參數來證實 //傳參時須要強制轉換類型 { for(int i=0;i<5;i++){ for(int j=0;j<5;j++)cout<<*(arr+i*5+j)<<" "; cout<<endl; } } int main() { int arr[5][5]; int ins=0; for(int i=0;i<5;i++){ for(int j=0;j<5;j++){ arr[i][j]=++ins; } } func1(arr); func2(arr); func3((int *)arr); return 0; }