数组作为形参

简介: 在函数传递值的过程中,一般都是值传递但是数组确实传递的指针,这样主要用于避免过多数据复制占用过多的内存空间。 我们在设置函数的时候可以使用 int puta(const int geta[],int s_a) 来避免原始数组受到修改,如此的话修改会报错input.
在函数传递值的过程中,一般都是值传递但是数组确实传递的指针,这样主要用于避免过多数据复制占用过多的内存空间。
我们在设置函数的时候可以使用
 int puta(const int geta[],int s_a) 来避免原始数组受到修改,
如此的话修改会报错
input.cpp: In function ‘int puta(const int*, int)’:
input.cpp:49:11: error: assignment of read-only location ‘*(geta + ((sizetype)(((long unsigned int)i) * 4ul)))’
   geta[i] = ipu;
下面是一个相关的例子
这里使用函数传入值,同时检测输入的值是否合法


8 #include
  9 using namespace std;
 10 
 11 int puta(int *geta,int s_a);
 12 
 13 int main(void)
 14 {
 15     int geta[10];
 16 //  puta(geta,sizeof(geta)/sizeof(int));
 17     if(!(puta(geta,sizeof(geta)/sizeof(int))))
 18     {
 19         for(int i = 0;i<sizeof(geta) sizeof(int);i++)  20         {
 21             cout<<geta[i]<<endl;
 22         }
 23     }
 24     else
 25     {
 26         cout<<"error input!\n";
 27     }
 28 
 29 }
 30 
 31 int puta(int geta[],int s_a)
 32 {
 33     int i;
 34     int ipu;
 35     for(i=0;i<s_a;i++)
 36     {
 37         if(!(cin>>ipu)) //cin>>check ipu data is adjust return true else return flase
 38         {
 39             cin.clear(); //clear cin flag
 40             while(cin.get() !='\n') //clear stdout buffer
 41                 continue;
 42             cout<<"error input!\n";
 43             return 1;
 44         }
 45         else if (ipu<0)
 46         {
 47             return 1;
 48         }
 49         geta[i] = ipu;
 50     }
 51     return 0;
 52 }    
</s_a;i++)
</geta[i]<<endl;
相关文章
|
8月前
|
Java Spring
Spring Boot的核心注解是哪个?他由哪几个注解组成的?
Spring Boot的核心注解是@SpringBootApplication , 他由几个注解组成 : ● @SpringBootConfiguration: 组合了- @Configuration注解,实现配置文件的功能; ● @EnableAutoConfiguration:打开自动配置的功能,也可以关闭某个自动配置的选项 ● @ComponentScan:Spring组件扫描
|
消息中间件 uml RocketMQ
3 张图带你彻底理解 RocketMQ 事务消息
3 张图带你彻底理解 RocketMQ 事务消息
68042 2
3 张图带你彻底理解 RocketMQ 事务消息
|
2天前
|
云安全 人工智能 安全
AI被攻击怎么办?
阿里云提供 AI 全栈安全能力,其中对网络攻击的主动识别、智能阻断与快速响应构成其核心防线,依托原生安全防护为客户筑牢免疫屏障。
|
12天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~
|
6天前
|
安全 Java Android开发
深度解析 Android 崩溃捕获原理及从崩溃到归因的闭环实践
崩溃堆栈全是 a.b.c?Native 错误查不到行号?本文详解 Android 崩溃采集全链路原理,教你如何把“天书”变“说明书”。RUM SDK 已支持一键接入。
488 201
|
4天前
|
人工智能 移动开发 自然语言处理
2025最新HTML静态网页制作工具推荐:10款免费在线生成器小白也能5分钟上手
晓猛团队精选2025年10款真正免费、无需编程的在线HTML建站工具,涵盖AI生成、拖拽编辑、设计稿转代码等多种类型,均支持浏览器直接使用、快速出图与文件导出,特别适合零基础用户快速搭建个人网站、落地页或企业官网。
604 157
|
10天前
|
人工智能 自然语言处理 安全
国内主流Agent工具功能全维度对比:从技术内核到场景落地,一篇读懂所有选择
2024年全球AI Agent市场规模达52.9亿美元,预计2030年将增长至471亿美元,亚太地区增速领先。国内Agent工具呈现“百花齐放”格局,涵盖政务、金融、电商等多场景。本文深入解析实在智能实在Agent等主流产品,在技术架构、任务规划、多模态交互、工具集成等方面进行全维度对比,结合市场反馈与行业趋势,为企业及个人用户提供科学选型指南,助力高效落地AI智能体应用。