您的位置:首页 > 编程语言 > C语言/C++

C/C++中指针与数组的相关知识

2017-07-04 15:38 246 查看
一维数组的数组名代表首地址,二维数组的数组名代表第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;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c c++ sizeof