为什么 fprintf 命令在 MATLAB 中显示 >>?

Why does fprintf command display >> in MATLAB?

这是 MATLAB 中的随机脚本示例。

prompt = 'Please enter a lowercase x:  ';
str = input(prompt, 's');
if str == 'x'
else
    fprintf('Error, you did not enter a lowercase x.')
end

这总是显示我在命令 window 末尾带有 >> 的 fprintf 命令中的内容。例如,在此随机上下文中,它将显示 ...

Error, you did not enter a lowercase x.>>

简单的问题,但我是 MATLAB 的新手。为什么我在每个 fprintf 命令的末尾都有一个 >>?似乎无法弄清楚。

此处 fprintf 仅显示文本并 returns 到命令控制台。

使用换行符'\n'

fprintf('Error, you did not enter a lowercase x.\n');
%                                               ~~~

使用 >> 提示符

在换行符后返回

您没有在字符串中指定换行符,因此 fprintf 将文本推送到命令 windows 并在 >> 之后直接生成另一个输入提示(>>)文本。向字符串 (\n) 添加换行元字符以解决问题:

fprintf('Error, you did not enter a lowercase x.\n')

此外,如果您的目标是发出错误,则应使用 error 函数。它会停止代码的执行并像其他 MATLAB 错误一样将消息标记为红色。