关于数组指针,指针数组,双重数组,二维矩阵,字符串数组,双重字符指针的理解
来源:互联网 发布:python 调用sap 编辑:程序博客网 时间:2024/05/16 18:23
1、二维数组
int array[10][10];
函数声明: void fun(int a[][10])
函数调用:fun(array);
访问: 一般使用a[i][j]来访问数组中的元素
2、指针数组
int *array[10];
函数声明:void fun(int *a[10]);
函数调用:fun(array);
访问:使用*(a[i]+j)访问数组中的元素
3、指向指针的指针
int **array;
函数声明:void fun(int **a);
函数调用:fun(array);
访问:*(*(a+i) + j) 或者a[i][j]访问元素(使用双重指针表示的二维数组的访问方法)
首先你需要明白二维数组名和指针的关系
对于这个二维数组,我们举例为:
1 2 3 4
5 6 7 8
9 10 11 12
因为数组名表示数组的首地址,
<1>所以a表示第一行的首地址
即:a→1 2 3 4
5 6 7 8
9 10 11 12
这时a+1则表示指向第二列的首地址,即
1 2 3 4
a+1→ 5 6 7 8
9 10 11 12
<2>而此时a[0]表示第一行第一列的首地址
a[0]
↓
1 2 3 4
5 6 7 8
9 10 11 12
a[0]+1 表示第一行第二列的首地址
a[0]+1
↓
1 2 3 4
5 6 7 8
9 10 11 12
<3>明白上面的东西你还需要明白**p表示什么意思
float **p, *j, i=100.12;
j=&i;
p=&j;
参考网页: 指针 数组的深入理解 http://blog.chinaunix.net/xmlrpc.php?r=blog/article&id=4979805&uid=20682147
双重指针的合理应用 http://www.jb51.net/article/72226.htmhttp:/
- 关于数组指针,指针数组,双重数组,二维矩阵,字符串数组,双重字符指针的理解
- 双重指针 二维数组
- 二维数组与双重指针
- 二维数组与双重指针
- C 语言二维数组和双重指针
- 二维数组和双重指针的转换及使用
- 关于一维数组、二维数组、一级指针、二级指针、指针数组、数组指针、空指针、字符指针、const的个人理解
- 数组指针,指针数组,二维数组,二维数组的指针
- 双重指针与2维数组
- C语言:双重指针对数组排序;
- 关于二维数组的指针理解
- 字符串 指针二维数组
- 二维数组 字符串 指针
- 关于字符数组、字符串、字符指针、字符指针数组
- 关于指针的指针和二维数组
- 【编码随笔】双重指针作形参的数组问题
- 指针 字符数组 字符串
- 字符数组,字符串指针
- 移除0元素
- Makefile Learing (下)
- ZZULIOJ 1918: G 【二分图匹配】
- 微信内置浏览器私有接口WeixinJSBridge介绍
- HDU 3308 LCIS(线段树)
- 关于数组指针,指针数组,双重数组,二维矩阵,字符串数组,双重字符指针的理解
- 蛇形数组
- ruby 2.1.1 rails 4.2.0 安装gemset 却少 mysql ,command line tool for mac osx
- Can You See The Beauty Of This Photo? Most People Can’t
- C# asp.net 实现导出Excel
- javaWeb--javaBean
- Win7下,VS2010 + CUDA7.5 + GPU 重新编译OpenCV2.4.9(二)
- iOS与JS交互
- STM32外部中断实验