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

求助:字符串转数字数组

[复制链接]
发表于 2007-4-4 20:50:53 | 显示全部楼层 |阅读模式
有好长一串字符串,里面的数字都是以逗号隔开,比如-12.33,-10.36,-42.78,……怎么样才能把它转化成数字数组(即取出那些数字,不要逗号)?我是每次读取一个字符的.
谢谢

[ 本帖最后由 comedy2006 于 2007-4-4 20:57 编辑 ]
发表于 2007-4-4 21:20:56 | 显示全部楼层
for loop, find ,-----match patten,string after,shift register.
回复 顶

使用道具 举报

 楼主| 发表于 2007-4-5 09:26:38 | 显示全部楼层
能不能帮我大概编一下,我弄了很久,就是有点错误.
那好长的字符串长度不定,里面的数字长度也不定,我用VISA的读节点,所以每次只可以读N个字节,这样就会有时候读出来的数字有残缺,希望高手再指点.谢谢
回复 顶

使用道具 举报

发表于 2007-4-5 09:42:07 | 显示全部楼层

回复 #3 comedy2006 的帖子

看你采取什么样的数据格式,比如single或者double的,然后读取相应的位数,然后转化就可以了,你一次读多少位?
回复 顶

使用道具 举报

 楼主| 发表于 2007-4-5 10:09:33 | 显示全部楼层
可以1位,但似乎太慢拉,也可以8位,反正随便.
回复 顶

使用道具 举报

发表于 2007-4-5 10:13:01 | 显示全部楼层
你读一位给我看看。。。。。
labview最小一下读取8位,也就是一个字节(大多数情况都是如此,或者可以9位,看串口模式确定)。
而你要读多少个字节则取决于你的数据格式,怎么可以随便呢。-12.33是single还是double还是long double?分别是32位,64位和128位
回复 顶

使用道具 举报

 楼主| 发表于 2007-4-5 10:16:15 | 显示全部楼层
不好意思,我说错了,是每次读取一个字节,比如1,2之类,或者每次读8个字符,比如-12.86,
我没有用那个VISA的什么波特率,是直接用VISA读,每个数字(比如-12.65)是单精度的.

[ 本帖最后由 comedy2006 于 2007-4-5 10:21 编辑 ]
回复 顶

使用道具 举报

发表于 2007-4-5 10:25:28 | 显示全部楼层

回复 #7 comedy2006 的帖子

-12.86应该不可能以字符的形式发送的,既然你说是单精度,那么就一次读32位看看。。
不过单片机的single可能是16位的,我现在有点模糊,你试试~~~然后labview有些格式转化的,在string里
回复 顶

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-9-30 03:24 , Processed in 0.033136 second(s), 8 queries , Gzip On, File On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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