c语言函数传参二维数组 c语言函数调用二维数组 实参

C语言函数调用二维数组,指针问题

正如

在南华等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站建设、成都网站制作 网站设计制作按需定制开发,公司网站建设,企业网站建设,成都品牌网站建设,全网营销推广,成都外贸网站制作,南华网站建设费用合理。

楼下

所言

int

**p

,定义的p是一个指向int*型的

指针

int

(*p)[10]是一个指向

数组

的指针

数组长度为10

假如定义成

deal(int

**p),传

参数

时要加强制类型转换:

deal((int**)a);

并且使用p时不能用

下标

,p[2][3]是毕尺错误的,因为不知道p指向的int*型的长度,无法编译成*(p+2*10+3)

必须自己写成*(p+2*10+3)来调用

假如定义成

deal(int

(*p)[10])就不一样了,

编译器

就能知道p是一个指向长度为10的数组的指针

那么p[2][3]就能编译成*(p+2*10+3)了

总之,C语言是很灵活的,不同的定义

方式

配上不同的

用法

,都是能得到正确的结果的

不知道这么说楼主明白了没?

同样的还有

多维数组

对多维指针的问题耐姿,楼主可以自昌数绝己类推一下


文章名称:c语言函数传参二维数组 c语言函数调用二维数组 实参
网页链接:http://azwzsj.com/article/dspjjdc.html