找回密码
 注册
LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 609|回复: 2

数组处理存储求教

[复制链接]
发表于 2009-4-16 22:30:19 | 显示全部楼层 |阅读模式
本帖最后由 becoll 于 2009-4-16 22:46 编辑

我想把一个多维数组的每一维数据的一部分数据拿出来组成一个一维数组加以存储,比如一个3*10的数组,我将每一维的前8个数拿出来,按次序组成一个1*24的一维数组,请问如何实现?

我再说明一下我要实现的东西:我做了个生产--消费者结构的数据采集存储程序,生产者循环每隔一段时间产生一段数据,比如一段1*1000的数据,以队列形式传送给消费者,消费者循环要将收到的这段数据的前800个点存储下来。而且要把下次收到的数据接着上次的存储(即存储为一个一维的数组),我现在的情况是,存储下来的是一个多维数组,请问如何解决啊?
我一开始的问题是先把数据处理成一维数组再存,但我考虑到我要存储的数据量很大(上G),弄成个一维数组恐怕内存吃不消,但是直接将队列传过来的数据存储的话就会是读一次队列送来的值我存储的数据就增加一维(我要的只是一维),请问该怎么解决呢?谢谢!
发表于 2009-4-16 22:31:58 | 显示全部楼层
Array Subset可以吗。我用过这个。
回复 顶

使用道具 举报

发表于 2009-4-17 03:57:14 | 显示全部楼层
楼主说的虽然可以用Array subset+Build array 或者Reshape array+Array subset完成,但显然不是合理的解决办法。
我也做过生产者消费者结构,存储1维数组时并没碰到楼主说的情况,可不可以发个截图看看?你试试在Enqueue之前先提取Subset,看看问题还存在不(这个不是解决办法,只是查一查)。
回复 顶

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2026-9-29 16:11 , Processed in 0.030564 second(s), 7 queries , Gzip On, File On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表