举例代码如下:

void mycvCalcHist(IplImage *img,double out_hist[256])
{int i=0, j=0;  double temp1=0;int temp2=0;const int hist_sz = 256;//0到255,一共256个灰度值  double hist[hist_sz];  memset(hist, 0, sizeof(hist));       for( i = 0; i < img->height; i++ )  {        for( j = 0; j < img->width; j++ )  {   temp1=cvGet2D(img,i,j).val[0];temp2=int(temp1);//作类型转换hist[temp2]++; //这里实现了hist中存储各灰度值出现的次数  }}  memcpy(out_hist,hist, sizeof(hist)); //肯定有人要问,为啥不用数组名作为参数传递从而改变实参数组的值//这种方法一般情况下都可以,我也测试了,然而这里就是不行,我估计与//memset(hist, 0, sizeof(hist));这句语句有关
}

分析:函数mycvCalcHist中自己定义了一个名为hist的数组,实际上就是out_hist这个数组,out_hist是主调函数中的数组,在这里,我只需要最后做一个memcpy即可实现值返回;如果要作值传递,我猜想也简单(并未作实际测试),进入函数时把out_hist这个数组值复制给hist就行,函数快结束时再把hist的值复制到out_hist应该就可以了!由于是局部数组,所以函数运行完后hist就给释放掉了,所以也不会多占用多少内存空间。
肯定有人要问,为啥不用数组名作为参数传递从而改变实参数组的值?这种方法一般情况下都可以,我也测试了,然而这里就是不行,我估计与memset(hist, 0, sizeof(hist));这句语句有关!所以以后遇到这种情况最保险的方法还是用memcpy函数!

最保险的函数间数组作为参数值传递与返回方法,用memcpy函数相关推荐

  1. JavaScript---网络编程(2)-函数与数组

    上节,学完循环了~ 现在学Javascript的函数和数组. JavaScript语法 每一种语言都有自己的语法规则,JS语法与Java很像,所以学习起来比较容易.JS中也一样有变量,语句,函数,数组 ...

  2. php函数从数组中取出指定的数目,PHP数组函数

    1.array_rand()从数组中随机取出一个或多个元素(返回值是:随机元素的键)$arr=['js','css',25,'php',30]; printf(' %s ',print_r($arr, ...

  3. php 数组处理函数,PHP数组处理函数举例

    在PHP中,存储在数组中的值成为数组元素,数组有一维数组和多维数组之分,每个数组元素的索引也称为关键字,访问数组元素可以通过索引.数组处理函数举例如下: 一.创建数组 1.使用array()函数创建数 ...

  4. php把数组合并,php数组合并_php数组合并、追加与连接的方法、array_combine函数)

    摘要 腾兴网为您分享:php数组合并.追加与连接的方法.array_combine函数),微视,听中国,顺风车,拍照识别等软件知识,以及爱听360听书,粤省事app,爱车管家,二级域名分发系统,电脑连 ...

  5. 指针详解(包含指针,指针数组,数组指针,指向数组指针的指针,函数指针,函数指针数组,指向函数指针数组的指针)

    大家都知道,指针有双面性,灵活度高,但是运用时一定要避免野指针和空指针的出现.否则会出现一些意想不到的错误.话不多说,看下面的代码: int main() {int arr[10] = { 0 };/ ...

  6. 函数指针和指针函数以及函数指针数组

    2019独角兽企业重金招聘Python工程师标准>>> 问题:一个整型a,根据a的值执行相应的代码 我的回答是使用switch case 面试官说可以这样做,但是还有速度更快的办法, ...

  7. 数组指针、函数指针与函数指针数组

    指针知识梳理 一.字符指针 二.数组指针 三.函数指针与函数指针数组 1.指针函数 2.函数指针 区别 3.函数指针数组 4.指向函数指针数组的指针 四.回调函数 一.字符指针 指向字符型数据的指针变 ...

  8. 函数指针、函数指针数组,函数指针数组的指针

    数组指针 概念:数组指针是指针,只要是指针他就占4个字节: 例如: 整形指针:int *p;能够指向整形数据的指针 浮点型指针:float *p;能够指向浮点型的数据的指针 那么数组指针,同样的理解就 ...

  9. 图解C语言中数组指针、指针数组、函数指针、函数指针数组、指向函数指针数组的指针

    关于C语言中数组指针.函数指针.指针数组.函数指针数组.指向函数指针数组的指针一直比较绕,稍微整理一下. 到底是指针还是数组? 其实到底是指针还是数组还是看变量名与[]先结合还是*先结合.我们知道C语 ...

最新文章

  1. 网络应用 axIos +vue的应用
  2. HTTP自定义Header-(SOCKET-TCP)
  3. jsp内置对象+Servlet
  4. matlab 左上角,matlab – 访问’uitable`的左上角
  5. Magento: 设置产品列表默认排序方式 How to sort Magento products by date added as default
  6. 解决freeswitch ICE 获取RTP地址时间过长的问题
  7. 1102. Invert a Binary Tree (25)-PAT甲级真题
  8. sqlserver安装介质上文件的长路径名称失败_SQL Server 2012 软件安装教程
  9. 计算机组成原理课程设计
  10. 新萝卜家园 GhostXP SP3 一键极速装机版 2012.05
  11. 阿泰,水晶报表--推拉之间
  12. 对曲线的坐标的积分的斯托克斯公式+参数定积分法
  13. 信号完整性(SI)电源完整性(PI)学习笔记(十七)传输线的串扰(一)
  14. Spark Steaming管理kafka的offset
  15. 服务器的类型都有哪些
  16. 区块链技术要用到什么开发语言?
  17. As I Began to Love Myself
  18. 钻石DIAMOND英语源于DIAMAUND钻石
  19. 自动化重复文件清理 Bash 脚本
  20. 回顾暑假,用时间铸就规律生活

热门文章

  1. 自学python推荐书籍2019-2019最全Python入门学习路线,不是我吹,绝对是最全
  2. python代码基础题-Python初学者福利 完整试题附答案 干货(收藏篇)
  3. python话雷达图-Python简单雷达图绘制
  4. python比excel优势-python数据分析相对于bi和excel的优势是什么?
  5. python资料书-《Python数据分析与应用》——图书配套资料下载
  6. python读取整个txt文件-python怎么读取txt文件内容
  7. 用python画猫咪怎么画-Turtle库画小猫咪
  8. python数据类型-Python3中六种标准数据类型的简单说明和理解
  9. python实现http下载文件-Python实现http文件下载
  10. 精通python要多久-精通python 或者R语言大约需要多长时间?怎样算精通?