C++ 数组的各类性质和用法
#include<iostream>
using namespace std;
void addarr(int *k,int len);
//文中形如sizeof(x)/sizeof(x[0]) 是用数组占用空间大小除以成员的大小,即得数组长度
//三种不同的数组声明方式
int x[5]={1,2,3,4,5};
int y[]={2,4,6,8,10};
int z[5];
//多维数组的声明
int xx[3][3]={
{1,2,3},{2,4,6},{3,6,9}
};
int main()
{
cout << "现在将输出X数组的内容" <<endl;
char n;
for(n=0;n<sizeof(x)/sizeof(x[0]);n++)
cout << x[n] << endl;
cout << endl;
cout << "现在将输出Y数组的内容" <<endl;
for(n=0;n<sizeof(y)/sizeof(y[0]);n++)
cout << y[n] << endl;
cout << endl;
cout << "现在将输出Z数组的内容" <<endl;
for(n=0;n<sizeof(z)/sizeof(z[0]);n++)
cout << z[n] << endl;
cout << endl;
char m;
cout << "现在将输出XX数组的内容" <<endl;
for(n=0;n<3;n++)
{
for(m=0;m<3;m++)
cout << xx[n][m] << '\t';
cout << endl;
}
cout << endl;
cout << "XX实际是按照一维按行优先存储" <<endl;
for(n=0;n<3;n++)
{
for(m=0;m<4;m++)
cout << xx[n][m] << '\t';
cout << endl;
}
cout << endl;
addarr(x,5);
cout << "现在将输出X数组自增后的内容" <<endl;
for(n=0;n<sizeof(x)/sizeof(x[0]);n++)
cout << x[n] << endl;
cout << endl;
cout << "现在将以指针方式输出Y数组的内容" <<endl;
for(n=0;n<sizeof(y)/sizeof(y[0]);n++)
cout << *(y+n) << endl;
return 0;
}
void addarr(int *k,int len)
{
while(len--)
k[len]++;
}