- It should not be possible without overloading
- You are correct
Definitive answer on the correct str2double behavior for the string '10 20'
1 次查看(过去 30 天)
显示 更早的评论
Under Windows 7 with R2014a, str2double('10 20') evaluates to NaN. I believe this is the correct behavior, per the documentation.
A colleague working in a Linux environment with R2014a reports that str2double('10 20') evaluates to an array [10 20].
1. Is this possible (without overloading)? 2. Am I correct that the intended evaluation (without overloading) is NaN?
Thanks so much.
0 个评论
采纳的回答
per isakson
2014-7-10
编辑:per isakson
2014-7-10
"str2double('10 20') evaluates to an array [10 20]." . If that is the case it should be reported as a bug
I advise against unrestricted use of str2num. It uses eval and ... , e.g.
>> str2num( 'sin([0:0.8:2*pi])')
ans =
0 0.7174 0.9996 0.6755 -0.0584 -0.7568 -0.9962 -0.6313
IMO: sscanf is a better alternative
>> vec = sscanf( '10 20', '%f' )
vec =
10
20
更多回答(1 个)
Azzi Abdelmalek
2014-7-9
编辑:Azzi Abdelmalek
2014-7-9
str2num('10 20')
will give an array, maybe that's what your colleague has used
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!