Main Content

更改警告的显示方式

您可以通过修改两种警告模式verbosebacktrace)来控制警告在 MATLAB® 中的显示方式。

模式

描述

默认值

verbose

显示有关如何隐蔽警告的消息。

off (terse)

backtrace

在生成警告后显示堆栈跟踪。

on (enabled)

注意

verbose 和 backtrace 模式存在某些局限:

  • prev_state 并不将有关 backtraceverbose 模式的信息包含在 prev_state = warning('query','all') 语句中。

  • 模式变更会影响到所有已启用的警告。

启用 Verbose 警告

当您启用 verbose 警告时,MATLAB 会针对每个警告额外显示一行信息,告知您如何隐蔽该警告。

例如,您可以开启所有警告,禁用 backtrace 警告而启用 verbose 警告:

warning on all
warning off backtrace
warning on verbose

运行一条生成错误的命令会显示一则扩充的消息:

rmpath('folderthatisnotonpath')
Warning: "folderthatisnotonpath" not found in path.
(Type "warning off MATLAB:rmpath:DirNotFound" to suppress this warning.) 

显示对特定警告的堆栈跟踪

如果警告是从淹没在多级函数调用中的代码生成的,则很难找到该警告的来源。当您启用 backtrace 模式时,MATLAB 显示出现警告的文件名和行号。例如,您可以启用 backtrace 并禁用 verbose:

warning on backtrace
warning off verbose

运行一条生成错误的命令会显示一个带行号的超链接:

Warning: "folderthatisnotonpath" not found in path. 
> In rmpath at 58 

点击该超链接可转到警告的位置。