可能重复:
C:创建指向二维数组的指针
定义数组时,如
int k[100];
Run Code Online (Sandbox Code Playgroud)
它可以转换为int*:
int* pk = k;
Run Code Online (Sandbox Code Playgroud)
它有一个指针变量,可以将多维数组转换为?
int m[10][10];
??? pm = m;
Run Code Online (Sandbox Code Playgroud)
int m[10][20];
int (*pm)[20] = m; // [10] disappears, but [20] remains
int t[10][20][30];
int (*pt)[20][30] = m; // [10] disappears, but [20][30] remain
Run Code Online (Sandbox Code Playgroud)
但这不是"演员".Cast是一种显式类型转换.在上面的例子中,转换是隐含的.
并不是指针类型仍然依赖于除第一个之外的所有数组维度.在这种情况下,不可能有一个完全"无量纲"的指针类型,即int **指针不能与内置的2D数组一起使用.int ***具有内置3D阵列的指针也不会.
| 归档时间: |
|
| 查看次数: |
1344 次 |
| 最近记录: |