【发布时间】:2013-08-10 14:10:32
【问题描述】:
有没有办法在循环中将varargin 中的输入传递给fprintf?
例如,如果你有类似的东西:
function = func_name(var1,varargin)
for i = varargin
fprintf('The first name is %s , another is %s',var1,varargin)
end
如果输入是name1name2和name3,我希望循环输出:
The first name is name1, another is name2
The first name is name1, another is name3
fprintf 不能接受单元格输入,并且将 varargin 更改为 varargin{:}(使其成为一个单独的列表)也不是我想要的,因为它不会将 varargin 输入分离成单独的循环。
我也不能使用inputname(),因为如果输入是一个表达式而不是单个变量,Matlab 在调用输入名称时返回一个空字符串''。有没有办法仍然使用inputname() 并在循环中添加一个计数器,或者索引varargin 输入并循环它们?
【问题讨论】:
标签: matlab variadic-functions printf