数组名和指针作为形参?
来源:互联网 发布:程序员年度评价 编辑:程序博客网 时间:2024/06/07 11:36
1.用数组名做函数参数
f(int arr[],int n)①
调用时采用:f(arr,10)
由于数组名代表的是数组的地址,所以用数组名做参数的时候,其实是进行一个地址传递,会改变整个数组的值,所以①式也可以等价于:
f(int *arr,int n)
2.多维数组名作为函数的参数
在用指针变量做形参以接受实参数组名传递的地址时,有两种方法:
①采用和一维数组相同的方法,本质上把多维数组当做一维数组来用
②用指向一维数组的指针变量
下面一个例子来表示:
#include "stdio.h"
#define M 4
#define N 4
void rectmul(int (*p)[4],int (*q)[4],int m,int n);
void main()
{
}
void rectmul(int (*p)[4],int (*q)[4],int m,int n)
{
}
PS:(*p)[4]与*p[4]的区别
前者是表示:指向一个一维数组的指针,代表了这个指针指向的是一个数组,且这个数组的大小是4
后者是表示:一个指针数组。
在函数体内,可以直接用p[][]来表示数组中的元素,这是因为
p[i][j]=*(p[i]+j)=*(*(p+i)+j)
- 数组名和指针作为形参?
- 8、C语言中用数组名和指针变量作为形参
- 数组指针,指针数组,函数指针,指针作为形参和返回值的注意事项
- 作为函数形参的数组,在函数体内,数组名仅仅是个指针
- 数组名可作为指针常量
- 指针变量为什么可以作为“数组名”?
- 数组名 和 指针
- 数组名和指针
- 数组名和指针
- 数组名和指针
- 数组名 和 指针
- 数组名和指针
- 数组名和指针
- 数组名和指针
- 指针和数组名
- 指针和数组名
- 数组名和指针
- 指针和数组(数组名a作为左值和右值的区别)
- 数据库的一些基本知识(1)------数据库引擎
- JavaScript跨域总结与解决办法
- ASP网站架设服务器之后打开出现include file=../header.asp 这样的代码
- git 分支管理
- Python的函数参数传递
- 数组名和指针作为形参?
- 刘云山:价值观自信是保持民族精神独立性的重要支撑
- Android中实现对/system/bin/surfaceflinger进程进行拦截和注入
- 时间日期格式化
- 线性表之顺序表的创建、初始化、查找、删除、插入和合并
- SQL中char、nchar、varchar、nvarchar、text的区别
- Spring整合JMS(一)——基于ActiveMQ实现
- C#的运行机制
- Ubuntu12编译FreeRDP