在Matlab中,在我看来,disp和fprintf命令都非常相似,因为它们都显示您告诉它的内容。这两个命令有什么区别?
发布于 2018-11-01 11:39:34
对于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 %d\n'
a = 1; fprintf('The value of a is %d\n',a)
The value of a is 1如果您正在讨论将数据写入文本文件,则格式为
fprintf(fileID,formatSpec,A1,...,An)按列顺序将formatSpec应用于数组A1,...An的所有元素,并将数据写入文本文件。fprintf使用在fopen调用中指定的编码方案。
例如
fileID = fopen('exp.txt','w');
fprintf(fileID,'The number is %d\n',1);
fclose(fileID);使用type命令查看文件的内容。
>> type exp.txt
The number is 1fprintf还可以返回fprintf写入的字节数。Refer to this answer
https://stackoverflow.com/questions/53094514
复制相似问题