精华内容
下载资源
问答
  • C++函数返回多个值

    千次阅读 2018-08-06 18:04:26
    《从C++函数返回多个值》 它的原文地址在这里: 《Returning multiple values from functions in C++》 作为深度阅读可以看看。文章不长,但覆盖全面。文章内的主要技术点包括: (1)Multipl...

    今天在回顾std::initializer_list时候,想到C++中一个函数返回多个值的方法都有哪些?

    搜索到了这么一篇译文,写的还是挺全面的。

    《从C++函数返回多个值》

    它的原文地址在这里:

    《Returning multiple values from functions in C++》

    作为深度阅读可以看看。文章不长,但覆盖全面。文章内的主要技术点包括:

    • (1)Multiple return values in C++ with output parameters
    • (2)Pairs and tuples
    • (3)Structs
    展开全文
  • C/C++函数返回多个值

    2019-08-08 16:07:08
    1.使用指针做函数参数,可以返回多个值 void frameRate(int num,double *a,double *b){ *a = 1; *b = 2; } 调用: int num =0;a = 0;b=0; frameRate (num,&a,&b); 此时便将a,b的值改变并能返回直接使用 2....

    1.使用指针做函数参数,可以返回多个值
    void frameRate(int num,double *a,double *b){
    *a = 1;
    *b = 2;
    }
    调用:
    int num =0;a = 0;b=0;
    frameRate (num,&a,&b);
    此时便将a,b的值改变并能返回直接使用

    2.使用结构体返回
    typedef struct {
    int a;
    int b;
    int c;
    }str;
    str change(str s)
    {
    s.a += 1;
    s.b += 1;
    s.c += 1;
    return s;
    }

    int main(void)
    {
    str s1, s2;
    s1.a = 1;
    s1.b = 1;
    s1.c = 1;
    s2 = change(s1);
    printf(“s1.a = %d\ts1.b = %d\ts1.c = %d\n”,s1.a, s1.b, s1.c);
    printf(“s2.a = %d\ts2.b = %d\ts2.c = %d\n”,s2.a, s2.b, s2.c);
    return 0;
    }

    展开全文
  • 关子: 之前一直使用matlab做算法设计与数据分析,但是matlab的工程化不够以及非开源,软件需要付费。 最近使用OpenCV来搞图像算法的工程化应用,采用C语言作为编程语言。 遇到了一棘手的问题: 我将算法都...

    写作时间:2021-02-19

    说点闲话:
    之前一直使用matlab做算法设计与数据分析,但是matlab的工程化不够以及非开源,软件需要付费。
    最近使用OpenCV来搞图像算法的工程化应用,采用C语言作为编程语言。
    目录:
    1.遇到了一个棘手的问题(C/C++函数如何返回多个值???)
    2.怎么办?(代码示例)

    正文:
    1.遇到了一个棘手的问题:(C/C++函数如何返回多个值???)
    我将算法都封装成不同的函数,在matlab中调用该函数很简单,如下:

    %matlab 函数示例
    function [outputArg1,outputArg2] = test_func(inputArg1,inputArg2)
    % test_func 此处显示有关此函数的摘要
    %   此处显示详细说明
    outputArg1 = inputArg1;
    outputArg2 = inputArg2;
    end
    
    

    在matlab中,想输出多个值很容易。
    但是,你要想在C语言函数中返回(输出)多个值,没有这么容易。

    2.怎么办?(代码示例)
    方法有3种,我只说最常用也最有效的1种。
    在函数调用时,传递带有地址的参数,并使用指针更改其值;
    这样,修改后的值就会变成原始参数。

    直接上代码:
    1)主函数//main.cpp

    //main.cpp
    #include <stdio.h>
    #include "mycal.h"
    int  main()
    {
    	int a = 2;
    	int b = 1;
    	int c;
    	int c1;
    	myadd_func(a,b,&c,&c1);
    	printf("c= %d \n",c);
    	printf("c1= %d \n", c1);
    	return 0;
    }
    
    

    2)子函数//mycal.cpp

    //mycal.cpp
    #include<stdio.h>
    int myadd_func(int a,int b,int *c ,int *c1)
    {
    	*c = a + b;
    	*c1= a + b+100;
    	return 0;
    }
    

    3)子函数对应的头文件

    //mycal.h
    int myadd_func(int a, int b, int *c, int *c1);
    

    运行结果:

    在这里插入图片描述
    结果正常OK


    THE END~

    在这里插入图片描述

    【MATLAB-app】系列教程(含视频)00_csdn上第一套关于matlab 界面设计之appdesigner系列“视频课”来啦~~

    【图像算法&MATLAB】一文讲明白:图像的直方图均衡化(附作者自编源代码)

    【探测器与相机标准】我对图像(图像传感器/相机)“非均匀性”的理解与学习笔记

    在这里插入图片描述

    展开全文
  • C++函数能否返回多个值

    千次阅读 2014-06-17 13:44:02
    如果在C++语言中需要返回多个值可以有以下三种方法: 1、返回一个数组的首地址,那么可以把整个数组的元素返回。 例如: double* a; a=f(); double* f() { b=(double*)malloc(8*2); b[0]=1; b[1]=2; return b
    C系列语言是不能的,只能返回一个返回值。
    但纠正一下三楼的说法,不是所有语言都是这样,比如matlab就可以返回多个。
    如果在C++语言中需要返回多个值可以有以下三种方法:
    1、返回一个数组的首地址,那么可以把整个数组的元素返回。
    例如:
    double* a;
    a=f();
    double* f()
    {
    b=(double*)malloc(8*2);
    b[0]=1;
    b[1]=2;
    return b;
    }
    但是多次调用还要考虑释放内存问题
    2、传入指针
    例如:
    double a[2];
    f(a)
    void f(double *a)
    {
    a[0]=1;
    a[1]=2;
    }
    3、输入引用,可以返回不同类型变量
    例如:
    int a;
    double b;
    f(a,b)
    void f(int &a,double &b)
    {
    a=1;
    b=2;
    }
    展开全文
  • C++函数返回多个变量

    千次阅读 2017-10-06 10:52:57
    [序]: 首先,非常感谢最近结识到...C++返回的话,对于很刚接触C++不久的人来说,一般会是直接返会返会标准库自带的类型,如(float,double,int,char或者是string)。随着实力的提高和遇到的题目的难度的提高,会
  • 如何使C++函数返回多个数值。使用指针呀,具体怎么用,请看介绍吧!
  • C++函数返回多个参数

    万次阅读 2017-12-07 22:43:14
    提出一问题:写一个函数,计算两数相除,要求同时返回商和余数,怎么写?我们知道函数的返回值只能有一,同时返回数这跟本不可能。但用结构就变为可能了!代码如下:struct Result{ int shang; int yu; }...
  • C++ 利用指针和结构体实现一个函数返回多个值

    千次阅读 多人点赞 2017-03-22 21:07:14
    介绍利用指针与利用结构体作为函数的返回值,实现一个函数返回多个值
  • c++函数如何返回多个参数

    万次阅读 多人点赞 2018-08-07 22:00:58
    1、使用结构 #include &lt;iostream&gt; using namespace std; struct Result { int add; int sub; }; Result operation(int a,int b) { Result ret; ret.add=a+b; ret.sub=a-b;......
  • C++调用返回多个值的Python函数

    千次阅读 2018-05-15 10:06:40
    转自:http://chensx.iteye.com/blog/1299383 某些时候,用python模块来实现一些特定的功能会比...下面的代码演示了C++程序如何调用python中的函数,并得到从python函数返回多个值。 Python代码 # filename...
  • C++函数多值返回

    千次阅读 2018-09-29 21:26:43
    对一组整型数据求最大、最小值、累加和,要求用一个函数完成(多值返回)。 #include &lt;bits/stdc++.h&gt; using namespace std; void inputArray(int a[], int n); int getSum(int a[], int n, int ...
  • C++中使子函数返回多个值

    千次阅读 2013-08-01 10:52:28
    一般在子函数中使用return语句只能返回数值,需要返回以上的参数,就要利用形参的引用来返回,参考以下代码:#include #include using namespace std; int FunBack(int x,int &y,int &z) { y=x*2; z=y*2...
  • 将需要返回的多值存储在一数组存储中,函数返回数组即可 常用的方法是:声明一返回指针的函数 int *PP_point() { int a[]={0,1,2,3,4,5,6,7,8,9}; int max=a[0]; int min=a[0]; for(int i=0; i; i++) ...
  • c++函数返回数组

    千次阅读 多人点赞 2018-12-13 19:39:02
    调用某个函数时经常需要函数返回个值,我们都知道c++函数返回的是一个copy,所以当只返回一个值时不会出现什么问题,直接return一个copy就行了,但是如果返回一个数组,事情就变得有趣了,我最近就遇到了这个...
  • C++函数返回多个数值的三种方法

    万次阅读 多人点赞 2019-05-28 15:59:56
    C++ 中指针函数的基本形式: 函数类型 * 函数名 (参数数据类型 参数1, 参数数据类型 参数 2,...){ 执行体 1; 执行体 2; ... } 例如下面这个函数就是一指针函数: int * a(int b[], int c){ cout<<...
  • 解决c++函数返回多个参数

    千次阅读 2018-12-02 16:16:56
    一个函数只能返回一个值,然而有时候函数需要同时返回多个值,使用引用形参为我们一次返回多个结果提供了有效的途径。   比如我们想要实现对一个数组进行操作,并且返回经过处理后的数组,这时就可以使用引用来...
  • 在没有tuple之前,如果函数需要返回多个值,则必须定义一个结构体,有了C++11,可以基于tuple直接做了,下面是个示例: // 编译:g++ -std=c++11 -g -o x x.cpp #include // tuple头文件 #include #include using...
  • 计算得出了a,b,c三不同结果(比如一是温度,一是压力,一是流量),现在希望将这三结果在主函数main()中输出,我记得一个函数只能返回结果,网上也查了,说是用指针或者引用可以解决这问题,不过...
  • c/c++函数返回数组

    千次阅读 2016-12-17 17:58:39
    c++函数如何返回一个数组调用某个函数时经常需要函数返回个值,我们都知道c++ 的函数返回的是一个copy,所以当只返回一个值时不会出现什么问题,直接return一个copy就行了,但是如果返回一个数组,事情就变得有趣...
  • java中如何实现一个函数返回多个值

    万次阅读 2019-05-16 17:06:00
    由于java中没有指针,不能像C++一样通过指针的方式实现一个函数返回多个值,因此在java中必须采用变通的方式解决,常用的方式有以下几种: 1、封装一个实体类,将要返回的值封装进去; 2、通过map或者数组的方式来...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 412,899
精华内容 165,159
关键字:

c++函数返回多个值

c++ 订阅