关于c++中数组参数的传递
#include<iostream>
using namespace std;
void print(int b[],int n);
int main()
{
int i;
int b[10];
for(i=0;i<10;i++)
{
cin>>b[i];
}
print(b,10);
system("pause");
return 0;
}
void print(int b[],int n)
{
int i;
for(i=0;i<10;i++)
{
cout<<b[i];
}
}
直接传递数组参数可以
#include<iostream>
using namespace std;
void print(int* b,int n);
int main()
{
int i;
int b[10];
for(i=0;i<10;i++)
{
cin>>b[i];
}
print(b,10);
system("pause");
return 0;
}
void print(int* b,int n)
{
int i;
for(i=0;i<10;i++)
{
cout<<b[i];
}
}
传递指向数组第一个元素的指针也可以
#include<iostream>
using namespace std;
void print(int(&a)[10]);
int main()
{
int i;
int b[10];
for(i=0;i<10;i++)
{
cin>>b[i];
}
print(b);
system("pause");
return 0;
}
void print(int(&a)[10])
{
int i;
for(i=0;i<10;i++)
{
cout<<a[i];
}
}
传递对数组的引用也可以。
#include<iostream>
using namespace std;
void print(int* &b,int n);
int main()
{
int i;
int b[10];
for(i=0;i<10;i++)
{
cin>>b[i];
}
print(b,10);
system("pause");
return 0;
}
void print(int* &b,int n)
{
int i;
for(i=0;i<10;i++)
{
cout<<b[i];
}
}
传递指针的引用不可以,如果需要需要修改成下面的代码:
#include<iostream>
using namespace std;
void print(int* &b,int n);
int main()
{
int i;
int b[10];
for(i=0;i<10;i++)
{
cin>>b[i];
}
int* p=b;
print(p,10);
system("pause");
return 0;
}
void print(int* &b,int n)
{
int i;
for(i=0;i<10;i++)
{
cout<<b[i];
}
}