做大作业遇到这样一个问题:在子函数里申请了一个二维数组,在主函数里要用到二维数组里的数据,但是在主函数里又不能提前申请(因为不知道数组长度),所以需要将数组return得到。

子函数:

float ** SURFCompare(Mat srcImage1, Mat srcImage2)//注意子函数返回值为float **
{...float **point;//定义二维指针point = (float**)malloc(sizeof(float) * viewMatches.size());//为指针申请空间,
for (int i = 0; i < viewMatches.size(); i++)//viewmatch.size是行数
{point[i] = (float *)malloc(sizeof(float) * 4);//4是列数} for (int i = 0; i < viewMatches.size(); i++)//将匹配的特征点坐标赋给point,给数组赋值
{index1 = viewMatches.at(i).queryIdx;index2 = viewMatches.at(i).trainIdx;point[i][0] = keyPoints1.at(index1).pt.x;//u1point[i][1] = keyPoints1.at(index1).pt.y;//v1point[i][2] = keyPoints2.at(index2).pt.x;//u2point[i][3] = keyPoints2.at(index2).pt.y;//v2
}return point;//返回数组指针
}

主函数中调用

int main()
{...//调用surf子函数,得到返回的二维数组float **matchpoint = SURFCompare(srcImage1, srcImage2);//输入两幅图                                                   //调用最小二乘法求解三维坐标,用到二维数组solveab(matchpoint, pointnum, M1, M2);//传入匹配点坐标,匹配点对个数,投影矩阵for (int i = 0; i < pointnum; i++)//释放matchpoint,pointnum是行数free(matchpoint[i]);free(matchpoint);
}

注意:1、如果在主函数中已经可以计算得到数组的长度,就可以在主函数中malloc动态申请一个数组,调用子函数改变数组的 值;

2、如果主函数中不计算就可以知道数组长度,可以直接静态定义二维数组;

C如何将二维数组作为返回值相关推荐

  1. 动态二维数组外圈元素值的和_C语言 | 用指向元素的指针变量输出二维数组元素的值...

    例33:有一个3*4的二维数组,要求用C语言实现指向元素的指针变量输出二维数组个元素的值. 解题思路:二维数组的元素时整型的,它相当于整型变量,可以用int*型指针变量指向它.二维数组的元素在内存中是 ...

  2. php 二位数组去掉重复,PHP 二维数组去掉重复值并保持原结构

    PHP 二维数组去掉重复值并保持原结构 直接上代码,解释很详细 //二维数组去掉重复值 function arrunique($a){ foreach($a[0] as $k => $v){ / ...

  3. 利用循环,使得10 * 10的二维数组具有以下值,并按以下结构输出在屏幕上

    <程序设计基础-c语言>杨莉 刘鸿翔 ISBN-978-7-03-032903-5 p113 习题4 5.利用循环,使得10 * 10的二维数组具有以下值,并按以下结构输出在屏幕上 0 1 ...

  4. PHP 二维数组去掉重复值并保持原结构

    不得不说PHP的数组功能真的是非常强大. 下面直接上PHP的二维数组去掉重复值并保持原结构的 代码: //二维数组去掉重复值 function arrunique($a){ foreach($a[0] ...

  5. php查询二维数组中的值,如何在二维数组中查找一个指定的数值

    最近整理之前自己学习Java时的一些代码笔记,可能都是一些比较基础的Java知识,在这里只是给需要的人参考一下. 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排 ...

  6. php 二维数组根据键值合并二维数组_php数组根据某键值,把相同键值的合并最终生成一个新的二维数组...

    匿名用户 1级 2013-12-29 回答 php数组根据某一个键值,把相同键值的合并生成一个新的二维数组 源数据: $infos = array( array( 'a' => 36, 'b' ...

  7. PHP二维数组去除重复值

    $excel_array = [['a'],['b'],['a']]; $array=[]; foreach($excel_array as $key=>$v){if(in_array($v[0 ...

  8. php 二维数组根据键值合并二维数组_php数组实现根据某个键值将相同键值合并生成新二维数组的方法详解...

    这篇文章主要介绍了php数组实现根据某个键值将相同键值合并生成新二维数组的方法,涉及php数组的遍历.赋值相关运算技巧,需要的朋友可以参考下 本文实例讲述了php数组实现根据某个键值将相同键值合并生成 ...

  9. 直接写出php二维数组一个值,直接取PHP二维数组里面的值

    具体是这样的,如下一个二维数组,是从库中读取出来的. $user = array( 0 => array( 'id' => 1, 'name' => '张三', 'email' =& ...

最新文章

  1. 454. 4Sum II
  2. ListView实现分页
  3. 5个IO口扫描25个按键的解决方法(转帖)
  4. 最大隶属度原则_商圈广告精准投放,请牢记这四大黄金原则!
  5. 使用android SpannableStringBuilder实现图文混排,看到许多其他
  6. 从0到1实现VueUI库思路
  7. 泰国计算机专业大学排名,清迈大学在泰国的排名
  8. codeblock-(no debugging symbols found)(已解决)
  9. centos linux系统日志分析,CentOS 7日志分析详解【二】
  10. 2023年软考考试时间及相关安排
  11. pc_win10_x64安装ncnn,并使用vulkan
  12. 计算机组成原理实验报告JMPR,计算机组成原理实验四:组合逻辑控制器部件教学实验...
  13. 单反相机风景摄影易记易学口诀
  14. (附源码)计算机毕业设计ssm党史知识竞赛系统
  15. python打包whl文件
  16. 等面积圆柱投影的证明
  17. [汉语]类书、叙词表、分类词典、同义词、反义词词典...
  18. python练习题4 将mRNA翻译成蛋白质
  19. oracle 一行变多行
  20. Latex参考文献自动化添加方法

热门文章

  1. 想要导航提示直接进入_北斗导航已开始提供全球服务,你的手机怎样连接北斗?...
  2. java与python多态的区别_如果未调用父构造函数(与Java不同),多态性在Python中如何工作? - java...
  3. python界面长什么样图片_python界面是什么样的
  4. ubuntu下面 将桌面换成 英文
  5. 飞畅科技-工业级以太网交换机常见问题解析!
  6. 工业交换机和商用交换机对比
  7. 国家开放大学2021春1073法律文书答案
  8. ace unlck工具下载_压缩工具:WinRAR 曝出代码执行漏洞,该升级了
  9. echart 饼图每一块间隙_花10分钟做酱香饼,简单方便又美味,酥脆咸香比买的还要好吃...
  10. 计算机二级web题目(9.1)--综合选择题3