一维数组的数组名代表首地址,二维数组的数组名代表第1行的行地址,三维数组的数组名代表第一个二维的地址。
siziof(),参数为普通数组时,结果为整个数组的字节数。但是如果数组被作为了函数的形参,下面调用sizeof时数组名被当做首地址,结果为4。
char *cp[2] = { "abc", "def" };
char **cpp[2] = { cp, cp + 1 };
char ***cppp = cpp;//cppp跟cpp一个意思
cout << (**cppp + 1) << endl;//"bc"
cout << *(*cppp + 1) << endl;//"def"
cout<<**(cppp+1)<<endl;// "def"
cout << ***cppp << endl;//a
Int *p=new int[10];//数组没有初始化
Int *q=new int10;//数组初始化为0
范围for二维数组:
Int a[2][3]={1,2,3,4,5,6};
Int (&b)[3]=a[1];
for( auto &b:a)
for( auto &x:b)
cout<<x<<endl;