disp和fprintf之间的差异



在Matlab中,dispfprintf命令非常相似,因为它们都显示了您告诉它的内容。这两个命令之间有什么区别?

对于disp,它显示变量的值。

例如

>> a = 1; disp(a)
1

另一个例子。

>> disp('example')
example

注意,'example'可以看作是一个可变

参考:https://www.mathworks.com/help/matlab/ref/disp.html


对于fprintf,如果您要在屏幕上显示,则格式为

fprintf(formatSpec,A1,…,An(格式化数据并在屏幕。

disp的区别在于,除非指定格式字符串,否则它不会显示变量的值

例如,如果你倾向于显示变量的值,你会得到一个错误

>> a = 1; fprintf(a)
Error using fprintf
No format string.

您需要指定格式字符串。例如,格式字符串为'The value of a is %dn'

a = 1; fprintf('The value of a is %dn',a)
The value of a is 1

如果您正在讨论将数据写入文本文件,则格式为

fprintf(fileID,formatSpec,A1,…,An(将formatSpec应用于所有阵列A1、…的元素,。。。列中的顺序,并将数据写入文本文件。fprintf使用调用中指定的编码方案fopen。

例如

fileID = fopen('exp.txt','w');
fprintf(fileID,'The number is %dn',1);
fclose(fileID);

使用type命令查看文件的内容。

>> type exp.txt
The number is 1

fprintf还可以返回fprintf写入的字节数。参考此答案

参考:https://www.mathworks.com/help/matlab/ref/fprintf.html

相关内容

  • 没有找到相关文章

最新更新