whats wrong with this code?
조회 수: 1 (최근 30일)
이전 댓글 표시
Edit: added type statement to make code visible
Hi!
When I run similar code I get this error message saying:
type('assigning_values_to_character_arrays.m')
Error using sprintf
Unable to convert 'string' value to 'char'.
댓글 수: 0
답변 (2개)
Image Analyst
2022년 8월 12일
I'd use character arrays instead of strings and a for loop instead of a while loop:
function assigning_values_to_character_arrays()
antall_soner = 3;
C = cell(antall_soner, 1)
for k = 1 : antall_soner
% Here I actually have some functions that determines best_salt_1 and best_salt_2
best_salt_1{k} = input('Enter best_salt_1: ', 's');
best_salt_2{k} = input('Enter best_salt_2: ', 's');
C{k} = sprintf('%s %s',best_salt_1{k}, best_salt_2{k});
end
combination_of_salts=char(C{:})
end
댓글 수: 0
Cris LaPierre
2022년 8월 12일
편집: Cris LaPierre
2022년 8월 12일
I think this error may just mean you may just need to clear your workspace before running your code. At least I was able to reproduce after turning your function into a script and running it a couple times.
I would symplify your code to the following, keeping everything as strings.
antall_soner=3;
for nr_zones_analyzed = 1:antall_soner
% Here I actually have some functions that determines best_salt_1 and
% best_salt_2
best_salt_1=input('Enter best_salt_1: ', 's');
best_salt_2=input('Enter best_salt_2: ', 's');
C(nr_zones_analyzed,1) = string(best_salt_1) + " " + string(best_salt_2);
end
combination_of_salts=C
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!