精华内容
下载资源
问答
  • 在一个函数调用另一个函数返回的多个值一个 首先,定义了一个函数 。 代码如下: def createDataSet(): group = array([[1.0,1.1],[1.0,1.0],[0,0],[0,0.1]]) labels = ['A','A','B','B'] return group, ...

    在一个函数中调用另一个函数返回的多个值中的一个

    • 首先,定义了一个函数 。
      代码如下:
    def createDataSet():
        group = array([[1.0,1.1],[1.0,1.0],[0,0],[0,0.1]])
        labels = ['A','A','B','B']
        return group, labels
    • 第二,为了能够分开使用这个函数返回的group和labels 。

      我们可以这么做使用 fun()[1] // 下标从0开始,来调取返回值

      代码如下 :

    www= createDataSet()
    print("group的值为")
    print(www[0])
    print("lables的值为")
    print(www[1])
    • 最后结果显示如下:
    group的值为
    [[ 1.   1.1]
     [ 1.   1. ]
     [ 0.   0. ]
     [ 0.   0.1]]
    lables的值为
    ['A', 'A', 'B', 'B']
    展开全文
  • c语言如何返回一个数组函数

    万次阅读 2018-05-17 00:10:03
    C语言,无法直接返回一个数组,但是可以通过返回对应类型指针的方式,返回数组。大多数情况下,一维数组和一维指针是可以通用的。比如,定义一个函数,申请一定长度的整型动态数组,其长度用参数传入,并将...
    //通过返回传入数组的指针的方式
    #include"stdio.h"
    #include<iostream>
    using namespace std;
    //定义指针函数
    int *copy(int array[], int a[], int n);
    int main(){
        int size = 4;
        int a2[4];
        int a1[4] = {3, 5, 7 ,8};
        int *p;
        p = copy(a1, a2, size);
        cout << p[0] << " " << p[1] << " "<<p[2] << " " << p[3] << endl;
        return 0;
    }
    int *copy(int array[], int a[], int n)
    {
        for(int i = 0; i < n; i++)
            a[i] = array[i];
        return a;
    }

     

    #include <iostream>
    
    using namespace std;
    int ac1(int a,int b){
        int maxx,minn;
        maxx=a>b?a:b;
        minn=a<b?a:b;
        if(maxx%minn==0){
            return minn;
        }
        else return ac1(minn,maxx%minn);
    }
    int * ac(int x,int y,int a[2]);
    
    int main()
    {
        int s[2]={0};
        int a,b;
        cin>>a>>b;
        int *p;
        p=ac(a,b,s);
        cout<<ac1(a,b)<<endl;
        cout<<p[0]<<" "<<p[1]<<endl;
        return 0;
    }
    int * ac(int x,int y,int a[2]){
        int num=ac1(x,y);
        int num2=x*y/num;
        a[0]=num;
        a[1]=num2;
        return a;
    }
    
    
    展开全文
  • Matlab 函数返回一个值--样例

    万次阅读 2018-02-13 21:58:25
    一、matlab的函数文件返回一个值写法 二、简单的例子 三、结果截图 博主针对返回多个值也有相关样例,可见于博主文章:matlab 函数返回多个值--样例 一、Matlab的函数文件--返回一个值--写法为: 1.第一行写 ...

    目录

    一、matlab的函数文件返回一个值写法

    二、简单的例子

    三、结果截图


    博主针对返回多个值也有相关样例,可见于博主文章:matlab 函数返回多个值--样例

    一、Matlab的函数文件--返回一个值--写法为:

    1.第一行写 function 返回值/返回矩阵=该函数文件名(参数1,参数2,...,参数n)

    2.第二行开始写你的函数代码:

         例如:

    function x=init_x(x,m,n)
    
    for i=1:m
        for j=1:n
            x(i,j)=randsample(20,1);
        end
    end

        这是一个给x矩阵初始化的函数,x传入这个函数后,最后返回改变之后的x

    二、下面是一个简单的例子

            现在需要将xx矩阵元素完全赋值给一个新矩阵yy,即复制,具体代码如下:

    1.主函数

        execute_1.m

    clc
    clear
    %定义xx,yy矩阵大小
    m=3;
    n=1;
    xx=zeros(m,n);
    yy=zeros(m,n);
    %初始化xx
    xx=init_x(xx,m,n);
    %将xx矩阵赋值给yy
    yy=function_1(xx,yy,m,n)

     2. 初始化xx的函数

        init_x.m

    function x=init_x(x,m,n)
    
    for i=1:m
        for j=1:n
            x(i,j)=randsample(20,1);
        end
    end

    3.赋值函数

        function_1.m

    function y=function_1(x,y,m,n)
    
    for i=1:m
        for j=1:n
            y(i,j)=x(i,j);
        end
    end

    三、结果截图

    1.示例一

    2.示例二

     

    展开全文
  • c++函数返回一个数组

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

    https://www.cnblogs.com/walter-xh/p/6192800.html

    ---恢复内容开始---

     

    调用某个函数时经常需要函数返回一个值,我们都知道c++ 的函数返回的是一个copy,所以当只返回一个值时不会出现什么问题,直接return一个copy就行了,但是如果返回一个数组,事情就变得有趣了,我最近就遇到了这个问题。


    先附上代码吧:

    #include<iostream>
    
    using namespace std;
    
    //函数声明
    int * fun1();
    
    int * fun2();
    
    void dispArr(int *arr ,int n);
    
    const int arrlen = 10;
    
    int main()
    {
    
        //方法一,返回局部变量的首地址
        int * arr;
        arr = fun1();
        cout << "这是方法一" << endl;
    
        dispArr(arr, arrlen);
    
        //cout << fun1()[1] << endl;//我们可以通过这样的方式将数组未被销毁的内容输出,但这样做没有意义
    
        /*方法二,在函数内部通过new动态创建数组,
         然后记得在main函数使用完数组后将其delete下*/
        cout << "这是方法二" << endl;
        int *arr1;
        arr1 = fun2();
        dispArr(arr1, arrlen);
        delete arr1;
    
        return 0;
    }
    
    //函数定义
    
    int *fun1()
    {
        int temp[arrlen];
    
        for (int i = 0; i < arrlen;++i)
        {
            temp[i] = i;
        }
    
        return temp;
    }
    
    int *fun2()
    {
        int *temp = new int[arrlen];
    
        for (int i = 0; i < arrlen; i++)
        {
            temp[i] = i;
        }
    
        return temp;
    }
    
    void dispArr(int* arr, int n)
    {
        for (int i = 0; i < n; i++)
        {
            cout << "arr" << "[" << i << "]" << " is:" <<arr[i]<<endl;
        }
    }

    这是运行结果 
    这里写图片描述

    这里是废话

    问题很简单啦,就是通过一个函数创建一个数组,然后将数组返回,并将数组里的内容打印到屏幕上。拿到这个问题,像我这样初学者首先建立的思路是,你不是要我返回一个数组吗,我就返回一个数组的首地址给你啊,然后你根据这个地址去寻址,不就可以了吗。一开始我也这么想,因为我在java里就是这么干,所以很自然就想到了,然而是错的,而且是范了很傻的错误,因为c++里的指针可不是java里的引用,c++里也没有GC(Garbage Collection),关于内存的事还得靠你自己,你自己。

    这里是精华

    错误原因:函数体内部创建的变量都是局部变量,当函数运行结束的时候,都会抛弃,也就是说你只返回了一个temp指针,这个指针确实是你想要的,这没有问题,但是它指向的内容在函数结束也就是return的那一刻之后就已经物是人非了。所以你用这个这个指针去访问的内容也不是你想要的内容了。 
    解决方法:动态内存分配,就是new和delete的配合使用。在函数里用new关键字创建一个数组,这样这块地址对应的内容就属于你管理了,再也不会在函数结束的时候被回收了,你也就可以通过返回的指针来访问数组了,最后再delete一下。

    总结一下

    千万不要返回一个局部变量的指针或引用,因为你返回也是没用的,得到的指针所指内容在函数结束后就已经变了。 
    关于c++函数返回值和参数调用想了解更多,可以点 这里 。

    展开全文
  • Oracle中函数/过程返回结果集的几种方式: 以函数return为例,存储过程只需改为out参数即可,oracle 10g测试通过. (1) 返回游标: return的类型为:SYS_REFCURSOR 之后IS里面定义变量:curr SYS_REFCURSOR; ...
  • 看unix环境高级编程的时候,看到里面的signal函数是一个可以返回一个函数函数; 特别惊讶,以前并没有想过C语言也可以这样实现函数。 按照书里所说,signal声明如下: #include void (*signal(int sign, void ...
  • 计算得出了a,b,c三个不同结果(比如一个是温度,一个是压力,一个是流量),现在希望将这三个结果在主函数main()输出,我记得一个函数只能返回一个结果,网上也查了,说是用指针或者引用可以解决这个问题,不过...
  • java如何实现一个函数返回多个值

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

    千次阅读 2016-03-12 20:51:21
    不能直接返回一个数组,但是可以用其他方式实现类似功能。 方法1:利用全局变量    分析:全局变量作为C语言的一个知识点,虽然我们都了解它的特点,但实际教学过程应用得并不是很多。由于全局变量的作用域...
  • js函数返回一个内部函数详解

    万次阅读 2016-06-14 17:06:01
    通过一道面试题详细解读js函数返回内部函数的问题。
  • C++函数中返回数值的三种方法

    万次阅读 多人点赞 2019-05-28 15:59:56
    预备知识 指针函数 C++ 中指针函数的基本形式: 函数类型 * 函数名 (参数数据...例如下面这个函数就是一个指针函数: int * a(int b[], int c){ cout<<"Hello"; return b; } 指针函数的返回值是一个指针,...
  • C语言,无法直接返回一个数组,但是可以通过返回对应类型指针的方式,返回数组。大多数情况下,一维数组和一维指针是可以通用的。比如,定义一个函数,申请一定长度的整型动态数组,其长度用参数传入,并将...
  • mysql 返回个函数计算结果

    千次阅读 2014-02-13 16:51:00
    查询表的某用户的总记录数和即将到期的信息条数 ,显然这是两个函数 的计算结果,学校的时候贪玩,写得少 ,愧对老师啊。 虽然查的是数据库表,返回的计算结果,不是字段,且是两值,故用集合接收。 code :...
  • def order_by(str): return str[::-1] print(order_by('123456')) 输出:654321  
  • *文件名称:C#--如何在一个函数中返回两个值(包含数组的参数) *作者:杨飞 *完成日期:2014年9月2日 *版本号:v1.0 *对任务及求解方法的描述部分:C#--如何在一个函数中返回两个值(包含数组的参数) *我的程序:...
  • c语言,c++函数返回一个数组,二维数组

    万次阅读 多人点赞 2016-12-10 00:34:25
    与其他高级语言相比,c语言,c++ 最大的不方便之处就是 函数只能返回一个数值。若要返回一个数组,必须用到指针以及动态分配内存。 这是一个坎,就如学吉他的大横按一样,不少人这个坎上望而却步。 我前几年一直...
  • Matlab 函数返回值--样例

    万次阅读 多人点赞 2018-02-14 19:52:36
    目录 一、matlab的函数文件返回多个值写法 二、简单的例子 三、结果截图 一、Matlab的函数文件--返回多个值--写法为: 1.第一行写 function [返回值1...二、下面是一个简单的例子 现在需要将xx矩阵和yy矩阵的...
  • 我们使用python开发,自定义的函数 有时候需要返回多个值,可能是多个数值、字符串也有可能是多个列表,那么如何返回返回之后 调用该函数时 又应该如何接收呢?例如:我定义了一个函数,传入一个url;解析该...
  • Oracle中函数/过程返回结果集的几种方式:  以函数return为例,存储过程只需改为out参数即可,oracle 10g测试通过.  (1) 返回游标:  return的类型为:SYS_REFCURSOR  之后IS里面定义变量:curr SYS_REFCURSOR...
  • 如何让一个函数返回多个返回值

    万次阅读 多人点赞 2018-07-29 20:26:47
    一个题目为例: 要求用户使用一个整数指出自己的身高(单位为英寸),然后将身高转化为英尺和英寸。 方法一: 利用结构体,注意函数定义一定要用结构体来定义 struct trans { int chi; int cun; }; trans ...
  • postgresql 函数返回结果

    万次阅读 2011-11-26 22:56:07
    pgsql function 系列之一:...我们编写postgresql数据库的函数(或称为存储过程),时常会遇到需要返回一个结果集的情况,如何返回一个结果集,返回一个结果集有多少种方式,以及如何选择一个合适的方式返回结果
  • 如题: 今天开发遇到了个小坑,希望遇到这个...其实也就是写代码的时候有点粗心,没有考虑到ajax的sunccess执行的也是一个函数其里面直接用return结束的只是ajax成功返回函数,所有将代码改下就可以了!
  • 如何让C语言函数返回一个二维数组

    万次阅读 2016-09-14 13:55:02
    为了让C语言函数返回一个二维数组,有些人这样定义函数: int **foo(int rows, int columns) 然后函数费劲心机拼出来一个这样的malloc语句: int (*result)[columns] = (int (*)[columns])malloc(rows * ...
  • 如果需要在函数返回一个可以供查询语句使用的结果集,那么该函数的返回类型应该定义为一个索引表类型(一个table类型),然后查询语句使用table函数将函数返回的索引表转换成查询可以使用的目的表。示例如下: 1...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,632,421
精华内容 1,452,968
关键字:

在函数中需要返回一个结果时