首页 > 编程语言 >C++ 从函数返回指针

C++ 从函数返回指针

时间:2024-03-01 20:35:04浏览次数:25  
标签:返回 函数 int C++ include 指针

C++ 允许从函数返回指针,必须声明一个返回指针的函数:

int * myFunction()

C++ 不支持在函数外返回局部变量的地址,除非定义局部变量为 static变量。

 1 #include <iostream>
 2 #include <ctime>
 3 #include <cstdlib>
 4  
 5 using namespace std;
 6  
 7 // 要生成和返回随机数的函数
 8 int * getRandom( )
 9 {
10   static int  r[10];
11  
12   // 设置种子
13   srand( (unsigned)time( NULL ) );
14   for (int i = 0; i < 10; ++i)
15   {
16     r[i] = rand();
17     cout << r[i] << endl;
18   }
19  
20   return r;
21 }
22  
23 // 要调用上面定义函数的主函数
24 int main ()
25 {
26    // 一个指向整数的指针
27    int *p;
28  
29    p = getRandom();
30    for ( int i = 0; i < 10; i++ )
31    {
32        cout << "*(p + " << i << ") : ";
33        cout << *(p + i) << endl;
34    }35    return 0;
36 }

运行结果:

624723190
1468735695
807113585
976495677
613357504
1377296355
1530315259
1778906708
1820354158
667126415
*(p + 0) : 624723190
*(p + 1) : 1468735695
*(p + 2) : 807113585
*(p + 3) : 976495677
*(p + 4) : 613357504
*(p + 5) : 1377296355
*(p + 6) : 1530315259
*(p + 7) : 1778906708
*(p + 8) : 1820354158
*(p + 9) : 667126415

 

标签:返回,函数,int,C++,include,指针
From: https://www.cnblogs.com/uacs2024/p/18047878

相关文章

  • C++ 指针 vs 数组
    指针和数组并不是完全互换的1#include<iostream>23usingnamespacestd;4constintMAX=3;56intmain()7{8intvar[MAX]={10,100,200};910for(inti=0;i<MAX;i++)11{12*var=i;//这是正确的语法13......
  • Vue学习笔记31--自定义指令--函数式
    Vue学习笔记-自定义指令<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>自定义指令</title&......
  • 第八章 函数设计与应用
    第八章函数设计与应用一、函数定义和使用1、基本语法def函数铭([参数列表]):​ ""注释""​ 函数提2、递归函数函数在执行过程中又调用了函数自己回文:defisPalindrome(text): iflen(text)<=1: returnTrue iftext[0]!=text[-1] returnFalse returnisPali......
  • C++类开发第五篇(继承和派生的初体验)
    inheritance在C++中,继承是一种面向对象编程的特性,允许一个类(称为子类或派生类)从另一个类(称为基类或父类)那里继承属性和行为。通过继承,子类可以获得父类的数据成员和成员函数,从而可以重用父类的代码并扩展其功能。这样可以提高代码的复用性和可维护性,同时也符合面向对象编程的封......
  • Python函数每日一讲 - help函数的使用与实践
    引言今天周五,我们来看一个简单又熟悉的函数help(),help()函数就是Python中一个非常有用的工具,它能够帮助我们快速查找和理解Python中的各种函数、模块和对象的用法和功能。语句概览help()函数是Python内置函数之一,用于获取帮助信息。其语法格式如下:help([object])其中,object......
  • C++static 存储类
    1#include<iostream>23//函数声明4voidfunc(void);56intmain()7{8intcount=10;9while(count--)10{11func();12std::cout<<",变量count为"<<count<<std::endl;13......
  • (持续更新)c++指针
    空指针和野指针1.空指针定义:指针变量指向内存中编号为0的空间用途:初始化指针变量注意:空指针指向的内存是不可以访问的   2.野指针   const修饰指针1.const修饰指针constint*p=&a;图中:*p=20;错误,指针指向的值不可以改p=&b;正确,指针的指向可以改 (常量......
  • faster-fifo:C++实现的python多进程通信队列 —— 强化学习ppo算法库sample-factory的C
    项目地址:https://github.com/alex-petrenko/faster-fifo需要注意,该项目给出了两种安装方法,一种是pip从pypi官网安装,一种是从GitHub上的源码安装;经过测试发现这个项目维护程度较差,因此pypi官网上的项目比较落后,因此不建议使用pypi上的安装,而是进行源码编译安装。给出源码编......
  • 傅里叶展开为什么要求函数有周期性
        傅里叶级数展开是针对有限区间,而不是周期。课本上写的周期其实是方便运算而已,有限区间上面的表示方法可以由简单的三角函数基函数表示。因为级数展开是在一个有限的时间段内对函数进行分解,然后用一系列正弦和余弦函数的线性组合来表示这个有限区间函数(或者说有限区间上面......
  • 掌握字符与字符串:C语言中的神奇函数解析(三)
    ✨✨欢迎大家来到贝蒂大讲堂✨✨......