• C++ 利用指针和数组以及指针和结构体实现一个函数返回多个值


    C++ 利用指针和数组实现一个函数返回多个值
    demo1

    #include <iostream>
    using namespace std;
    int* test(int,int,int);
    int main()
    {
    int * result =test(1,2,3);
    cout<<result[0]<<endl<<result[1]<<endl<<result[2]<<endl;
    getchar();
    return 0;
    }
    
    int * test(int a,int b,int c)
    {
    int* presult =new int[3];
    presult[0] =a;
    presult[1] =b;
    presult[2] = c;
    return presult;
    }

    输出

    1 
    2 
    3


    C++ 利用指针和结构体实现一个函数返回多个值
    demo2

    #include <iostream>
    using namespace std;
    struct result
    {
    int first;
    double second;
    };
    result test(int a,double b);
    int main()
    {
    result returnvalue =test(1,2.1234);
    cout<<returnvalue.first <<endl<<returnvalue.second<<endl;
    getchar();
    return 0;
    }
    
    result test(int a,double b)
    {
    struct result ret;
    ret.first = a;
    ret.second = b;
    return ret;
    }

    输出

    1
    2.1234

    demo3
    c++ 使用结构体作为返回值

    #include <stdio.h>
    typedef struct {
    int a;
    int b;
    }Stu;
    Stu getStu(int x, int y)
    {
    Stu result;
    result.a = x;
    result.b = y;
    return result;
    }
    int main()
    {
    int a = 2, b = 3;
    Stu test = getStu(a, b);
    printf("%d %d
    ", test.a, test.b);
    return 0;
    }

    输出

    2 3


    demo4
    c++ 使用结构体指针作为返回值

    #include <stdio.h>
    #include <stdlib.h>
    
    typedef struct {
    int a;
    int b;
    }Stu;
    
    Stu* getStu(int x, int y)
    {
    Stu* pStu = (Stu*)malloc(sizeof(Stu));
    pStu->a = x;
    pStu->b = y;
    return pStu;
    }
    
    int main()
    {
    int x = 2, y = 3;
    Stu *pStu = getStu(x, y);
    printf("%d %d
    ", pStu->a, pStu->b);
    free(pStu);
    return 0;
    }

    输出

    2 3

    参考:

    https://blog.csdn.net/chaipp0607/article/details/64124704/

    https://blog.csdn.net/dfq12345/article/details/73924580

  • 相关阅读:
    leetcode刷题
    剑指offer题解
    哈夫曼树和哈夫曼编码
    HashMap的扩容机制---resize()
    缓存穿透,缓存击穿,缓存雪崩解决方案分析
    字符串的排列组合问题
    乐观锁与悲观锁以及乐观锁的一种实现方式-CAS
    HTTP相关
    零散知识点
    Java大数相加
  • 原文地址:https://www.cnblogs.com/sea-stream/p/11129961.html
Copyright © 2020-2023  润新知