我正在尝试打印一个有点长的警告消息并包含2个可变调用。这是我的代码:
warning( 'MATLAB:questionable_argument', ...
'the arguments dt (%d) and h (%d) are sub-optimal. Consider increasing nt or decreasing nx.', ...
dt, h )
显然,在查看MATLAB代码时,文本行向右延伸。我该如何打破它以便它包装得很好?我尝试过多种方法,但不断遇到语法错误。
答案 0 :(得分:2)
正如评论中所建议的那样,只需在要打破该行的位置插入\n
即可。您还可以为文本使用变量,以便在代码中轻松阅读:
txt = sprintf(['the arguments dt (%d) and h (%d) are sub-optimal.\n'...
'Consider increasing nt or decreasing nx.'],dt,h);
warning( 'MATLAB:questionable_argument',txt)
答案 1 :(得分:0)
比EBH提供的更简单的版本如下所示:
str1 = 'text 1';
str2 = 'text 2';
str3 = 'etc.';
str = sprintf('\n%s \n%s \n%s \n',str1,str2,str3);
warning(str)
答案 2 :(得分:0)
如果您只是在警告字符串中嵌入\n
之类的转义字符,则无效:
warning('Hi there.\nPlease do not do that.')
只会打印出来:
警告:你好。\ n请不要那样做
但是,如果使用sprintf
预先设置文本格式,则所有转义字符都可以使用。例如:
warnText = sprintf('Hi there.\nPlease do not do that.');
warning(warnText)
制作你想要的东西:
警告:你好。
请不要这样做。