Why does str2num truncate my number so early?

14 次查看(过去 30 天)
When I try to convert from string to number, I lose precision?
whos test_str
Name Size Bytes Class Attributes
test_str 1x9 18 char
K>> test_str
test_str =
0.067354
K>> str2num(test_str)
ans =
0.0674

采纳的回答

José-Luis
José-Luis 2014-6-23
format long
str2num(test_str)
  2 个评论
Andrew Reibold
Andrew Reibold 2014-6-23
Thank you Jose-Luis
This worked great. I presume that this changes the format for any future things I type as well?
Does anyone know what is the 'default' format if it is not long?
José-Luis
José-Luis 2014-6-23
You could read the documentation:
doc format
Note that this only changes how the number is displayed. Its internal representation is, by default in Matlab, a double.

请先登录,再进行评论。

更多回答(1 个)

Sara
Sara 2014-6-23
Use
sprintf
so you can control the precision you want.
  3 个评论
Jairo Andrés Gutiérrez Suárez
Yep but that method is not efficient. There should be a way to use the exact number of decimals. What if I am using srt2num to find a folder with the same number I looked for?

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Data Type Conversion 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by