#include<iostream> using namespace std; int & f(int a[], int index, int& ii){ static int b[10]; for(int i=0; i<10; i++) b[i]=a[i]+(++ii); return b[index]; } int main(){ int s[10]={10,20,30,40,50,60,70,80,90,100}; int y=5; int n=3; cout<<f(s,4,y)<<endl; cout<<y<<endl; return 0;}
时间: 2023-07-31 07:08:44 浏览: 36
使用include <iostream>时一定要加using namespace std
该段代码的输出结果是:
165
6
函数 f 返回一个引用类型的值,指向静态数组 b 的某个元素。函数内部,将数组 a 中的每个元素加上 ++ii 的值,存入数组 b 中。因为 b 是静态数组,所以其生命周期和程序的运行时间相同,可以保证返回的引用类型值一直有效。在主函数中,调用 f 函数输出 b 数组中下标为 4 的元素,即 150 + (++y) 的值,为 165。同时,输出 y 的值,为 6,因为在函数 f 中,++ii 使得 y 的值增加了 1。
阅读全文