当前位置: 首页 > article >正文

C++ 传递指针给函数

C++ 允许您传递指针给函数,只需要简单地声明函数参数为指针类型即可。

下面的实例中,我们传递一个无符号的 long 型指针给函数,并在函数内改变这个值:

#include <iostream>
#include <ctime>
 
using namespace std;
 
// 在写函数时应习惯性的先声明函数,然后在定义函数
void getSeconds(unsigned long *par);
 
int main ()
{
   unsigned long sec;
 
 
   getSeconds( &sec );
 
   // 输出实际值
   cout << "Number of seconds :" << sec << endl;
 
   return 0;
}
 
void getSeconds(unsigned long *par)
{
   // 获取当前的秒数
   *par = time( NULL );
   return;
}

当上面的代码被编译和执行时,它会产生下列结果:

Number of seconds :1294450468

能接受指针作为参数的函数,也能接受数组作为参数,如下所示:

#include <iostream>
using namespace std;
 
// 函数声明
double getAverage(int *arr, int size);
 
int main ()
{
   // 带有 5 个元素的整型数组
   int balance[5] = {1000, 2, 3, 17, 50};
   double avg;
 
   // 传递一个指向数组的指针作为参数
   avg = getAverage( balance, 5 ) ;
 
   // 输出返回值
   cout << "Average value is: " << avg << endl; 
    
   return 0;
}
 
double getAverage(int *arr, int size)
{
  int    i, sum = 0;       
  double avg;          
 
  for (i = 0; i < size; ++i)
  {
    sum += arr[i];
   }
 
  avg = double(sum) / size;
 
  return avg;
}

当上面的代码被编译和执行时,它会产生下列结果:

Average value is: 214.4

http://www.kler.cn/a/153259.html

相关文章:

  • 从PDF和图像中提取文本,以供大型语言模型使用
  • java开发之个微群聊自动添加好友
  • scrapy爬虫中间件和下载中间件的使用
  • git基本概念
  • 【概率统计】如何理解概率密度函数及核密度估计
  • Doris 数据导入一:Broker Load 方式
  • 树莓派3B+ PCB叠层设计
  • 连锁零售企业如何提高异地组网的稳定性?
  • PVE系列-LVM安装MacOS的各个版本
  • github / gitlab s申城 配置密钥 ssh key
  • 【SparkSQL】SparkSQL函数定义(重点:定义UDF函数、使用窗口函数)
  • 【Linux--进程控制】
  • 简单小结类与对象
  • 已知二叉树采用顺序存储,求编号为i和j的结点的最近公共祖先结点编号。
  • 记一次:Python的学习笔记二(Django项目1)
  • Matlab数学建模算法详解之混合整数线性规划 (MILP) 算法(附完整实现代码)
  • mac如何永久设置环境变量
  • Java的53个关键字分类及详细说明(包含3个特殊直接量+2个保留字)
  • 大脑--学习方法
  • PG14归档失败解决办法archiver failed on wal_lsn