String Matlab中字符串到num的特定格式转换

String Matlab中字符串到num的特定格式转换,string,matlab,formatting,numeric,String,Matlab,Formatting,Numeric,或 我想换成这个: >> sscanf(str,'%f') ans = 9.5200 你明白了。当它显示时,它只是四舍五入到小数点后四位。执行长格式,以查看更高的精度 ans = 9.51998 您还可以使用str2double作为sscanf的替代方案。它比str2num更安全、更灵活。这是因为str2num使用eval命令。例如,请尝试以下操作: >> str = '0009.51998'; >> x = sscanf(str, '%f') x =

我想换成这个:

>> sscanf(str,'%f')

ans = 9.5200

你明白了。当它显示时,它只是四舍五入到小数点后四位。执行
长格式
,以查看更高的精度

ans = 9.51998
您还可以使用
str2double
作为
sscanf
的替代方案。它比str2num更安全、更灵活。这是因为
str2num
使用
eval
命令。例如,请尝试以下操作:

>> str = '0009.51998';
>> x = sscanf(str, '%f')
x =
    9.5200
>> format long
>> x
x =
   9.519980000000000
>> 

你可能会对结果感到惊讶。

你得到了。当它显示时,它只是四舍五入到小数点后四位。执行
长格式
,以查看更高的精度

ans = 9.51998
您还可以使用
str2double
作为
sscanf
的替代方案。它比str2num更安全、更灵活。这是因为
str2num
使用
eval
命令。例如,请尝试以下操作:

>> str = '0009.51998';
>> x = sscanf(str, '%f')
x =
    9.5200
>> format long
>> x
x =
   9.519980000000000
>> 

您可能会对结果感到惊讶。

如果您已经拥有字符串,为什么要起诉num2str?(我意识到这不会改变你的问题/答案)如果你已经有了字符串,你为什么要起诉num2str?(我意识到这不会改变你的问题/答案)