Позвольте мне добавить другое решение:
>> N = 5;
>> f = cellstr(num2str((1:N)', 'f%d'))
f =
'f1'
'f2'
'f3'
'f4'
'f5'
Если N
длиннее двух цифр (>= 10
), вы начнете получать дополнительные пробелы.Добавьте вызов к strtrim(f)
, чтобы избавиться от них.
В качестве бонуса есть недокументированная встроенная функция sprintfc
, которая приятно возвращает массивы строк из строк:
>> N = 10;
>> f = sprintfc('f%d', 1:N)
f =
'f1' 'f2' 'f3' 'f4' 'f5' 'f6' 'f7' 'f8' 'f9' 'f10'