巩固:数组作为函数参数& 指针作为函数参数的用法

本文深入探讨了在CC++中如何使用数组和指针作为函数参数的方法。通过一个具体的示例——寻找数组中的最大值和最小值——详细解释了函数参数传递的过程和注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        学了C C++老久了,有些基本的用法必须注意,强化在心中,避免每次用的时候再去查书。比如数组作为函数参数& 指针作为函数参数的问题,今天加深了一下!

【例】写一个函数max_min(),作用:从一个数组a[N],从a[N]中找出最大值和最小值:

void max_min(const int *a, const int N, int* max, int* min)
{
	*max = *min = a[0];
	int i;
	for (i = 1; i < N; i++)
	{
		if (*max < a[i])
			*max = a[i];
		if (*min > a[i])
			*min = a[i];
	}
}

      在这个例子中要注意两个点:

1.      数组作为函数参数

void max_min(const int *a, constint N…)

也可以写成 void max_min(const int a[], const int N…)

主函数中相应的代码:

              int xc[4]
              for (i = 0; i<4; i++)
              {
                     xc[i]= ;/*****代码初始化*****/
              }
              int x_max, x_min,;
              max_min(xc, 4, &x_max,&x_min);

可以看到,调用形式即max_min(xc, 4,…)


2.      指针作为函数参数

这个问题在很久以前学习C语言的时候就遇到过,并且专门作为一个难点来学习,记得当时所举的例子就是交换两个变量的值的问题。

在上面的例子中同样,也是这个问题。

max_min函数没有反回值,但是我们要得到的最大最小值通过max,min两个参数传回主函数中,这里就必须用地址或指针的方式来完成:

void max_min(…, int *max, int *min)

在主函数中,见上面的代码最后一行,用取地址符来调用:max_min(…, &x_max, &x_min);


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值