matlab中readmtx(fname,nrows,ncols,precision)的语法

时间:2014-04-18 12:35:41

标签: matlab

我想在MATLAB中使用以下语法从文件中读取矩阵。该矩阵是双数。

readmtx(fname,nrows,ncols,precision)

这里所有输入对我来说都很熟悉。但我想知道精度。 int的精度是' int16'。双数的精度是多少?

1 个答案:

答案 0 :(得分:1)

在这种情况下,documentation表示:

  

可以读取二进制和格式化的数据文件。如果文件是二进制文件,则precision参数是fread识别的格式字符串。不支持重复修饰符,例如'40 * char'。如果格式化文件,则precision是fscanf和sscanf样式的格式字符串,格式为'%nX',其中n是找到格式化数据的字符数,X是转换字符,例如'g'或'd'。可以使用诸如'%nD'的精度字符串读取Fortran样式的双精度输出,例如'0.0D00',其中n是每个元素的字符数。这是sscanf接受的C风格格式字符串的扩展。不熟悉C的用户应注意,对于格式化整数,'%d'优先于'%i'。 MATLAB语法在C中解释'%i'整数,前导零为八进制。带行结尾的格式化文件需要提供每行的尾随字节数,对于带有回车符或换行符的平台(Macintosh,UNIX®),可以是1,对于带有回车符和换行符(DOS)的平台,可以是2。

此外,查看fread documentation

中的表格摘要会很有帮助

enter image description here