How to resolve this error Error using fprintf Function is not defined for 'cell' inputs.

조회 수: 10 (최근 30일)
If I got a function like this:
function display(a,b,c)
%Where a & b are strings and c is an integer
fprintf('1: %s \n', a);
fprintf('2: %s \n', b);
fprintf('3: %d \n', c);
end
Also, I got an cell array such that
cell=
'Hi '
'Hey'
'232'
And I want to execute this script:
display(cell{1,1},{2,1},{3,1});
I will get that error
Error using fprintf Function is not defined for 'cell' inputs.
How to overcome this problem?
Thanks in advance

답변 (2개)

Walter Roberson
Walter Roberson 2018년 4월 7일
display(cell{1,1}, cell{2,1}, cell{3,1});
Or you could use
display(cell{:});

KSSV
KSSV 2018년 4월 7일
fprintf('%s\n',cell{:})
  댓글 수: 2
Walter Roberson
Walter Roberson 2022년 4월 29일
@Maksudul Alam what problem are you observing?
Note: this approach will not work directly if you have a cell array containing things that are compound structures such as struct or cell or table.
cell= {
'Hi '
'Hey'
'232'
}
cell = 3×1 cell array
{'Hi '} {'Hey'} {'232'}
fprintf('%s\n',cell{:})
Hi Hey 232

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Characters and Strings에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by