Dragon |
|
|||
Dragon |
日歷
統(tǒng)計
導(dǎo)航常用鏈接留言簿(3)隨筆分類(58)
隨筆檔案(58)
搜索最新評論
閱讀排行榜評論排行榜 |
寫C++程序函數(shù)部分,傳遞數(shù)組往往已造成錯誤??偨Y(jié)一下
1,數(shù)組形參的定義。 如果要編寫一個函數(shù),輸出int型數(shù)組的內(nèi)容,可以用下面三種方式指定數(shù)組形參: void printValues(int*) void printValues(int[]) void printValues(int[10]) 注意:不需要修改數(shù)組形參的元素時,函數(shù)應(yīng)該將形參定義為指向const對象的指針 void f(const int*) 2,多維數(shù)組的傳遞 除了第一維以外的所有維的長度都是元素類型的一部分,必須明確指定: void printValues(int (*matrix)[10], int rowSize) void printValues(int matrix[][10], int rowSize)//這個更直觀. //下面是例子 #include<iostream> using namespace std; //一維數(shù)組形參 /* void print(int *a) { cout<<*a<<" "<<*(a+1)<<" "<<*(a+2)<<endl; } */ /* void print(int a[]) { cout<<*a<<" "<<*(a+1)<<" "<<*(a+2)<<endl; } */ /* void print(int a[3]) { cout<<*a<<" "<<*(a+1)<<" "<<*(a+2)<<endl; } */ /* void print(int a[3]) { cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl; } */ /* void print(int *a) { cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl; } */ /* void print(int a[]) { cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl; } */ //上面哪一種都行 int main() { int a[3]={2,1,3}; print(a); return 0; } //多維數(shù)組作形參 #include<iostream> using namespace std; //三選一 //void print(int (*matrix)[3],int rowsize) //void print(int matrix[2][3],int rowsize) void print(int matrix[][3],int rowsize) { for(int i=0;i<rowsize;i++) { for(int j=0;j<3;j++) { cout<<matrix[i][j]<<" "; } cout<<endl; } } int main() { int a[2][3]= { 1,2,3, 4,5,6 }; print(a,2); return 0; } ![]()
評論:
|
![]() |
|
Copyright © Dragon | Powered by: 博客園 模板提供:滬江博客 |