数组指针和指针数组怎样理解?作为函数参数时,怎样调用?
1个回答
展开全部
数组指针的实例:int(*p)[5]; 可以这样解释其定义:p是个指针,指向一个数组,数组有5个元素,每个元素是一个int型整数。在内存中,p就是一个占4字节的变量,变量的值是个地址,在内存的那个地址处,有4*5=20个连续字节被认为是一个int[5]数组。做一次p++,p的值增加20。
这种特性和二维数组是有相似之处的,比如int k[3][5],事实上,可以这样赋值: p=k。 如果要在形参里使用,可以将变量名去除,就抽象出数据类型。典型的函数声明可以这样写:void f( int(*)[5] ); 典型的实参调用可以这样写:f(k); 这里的k是int k[3][5]二维数组。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询