如何继续使用%符号的行

时间:2012-12-10 13:06:44

标签: matlab coding-style

请考虑以下代码:

data = textscan(fid,'%s%d%d%d%d%f%d%f%f%f%d','Delimiter',',','HeaderLines',28)

我想按照以下方式打破这一行:

data = textscan(fid,'%s%d%d%d%d%f%d...
%f%f%f%d','Delimiter',',','HeaderLines',28)

由于%符号,Matlab不允许这样做并使第二行成为注释。

我尝试了以下内容:

data = textscan(fid,'%s%d%d%d%d%f%d%...
f%f%f%d','Delimiter',',','HeaderLines',28)

但是现在第二行仍然在第一行f之后被注释掉了。

如何使用%符号进行续行?

2 个答案:

答案 0 :(得分:4)

你应该使用方括号([])来破坏字符串:

data = textscan(fid,['%s%d%d%d%d%f%d%f' ...
'%f%f%d'], 'Delimiter',',','HeaderLines',28)

答案 1 :(得分:1)

除此之外,一个经常被忽视的MATLAB语法是...行继续标记也会在行尾打开注释,即

x = [ 1, 2, 3, ... This is a comment
      4, 5, 6 ]; %
assert(isequal(x, 1:6))