Вы получаете это.Он просто округляется до четырех десятичных знаков при отображении.Выполните format long
, чтобы увидеть больше точности.
>> str = '0009.51998';
>> x = sscanf(str, '%f')
x =
9.5200
>> format long
>> x
x =
9.519980000000000
>>
Вы также можете использовать str2double
как альтернативу sscanf
.Это безопаснее и гибче, чем str2num
.Это потому, что str2num
использует команду eval
.Например, попробуйте следующее:
str2num(' figure();imshow(''peppers.png'')')
Вы можете быть удивлены результатами.