Is there any equivalent keyword 'goto' in matlab not in simulink but in matlab coding
조회 수: 2 (최근 30일)
이전 댓글 표시
I want to pass control to other section of code if certain condition becomes true something like this we do in C, code snippet attached for reference.
for k = ele_search_start_edx : ele_search_end_idx
if data(k) =='C' && data(k+1) == '='
Element_arr(n) = extraxtBetween(data(ele_search_start_idx : ele_search_end_idx),['=','{',' '],['}',' ','Q'])
n= n+1;
goto next_node_search_function
elseif data(k) == 'N'
Element_arr(n) = extractBetween(data(ele_search_start_idx1 : ele_search_end_idx1),['=','{',' '],[' ','}'])
n= n+1;
goto next_node_search_function
elseif data(k) =='L' && data(k+1) == '='
Element_arr(n) = extraxtBetween(data(ele_search_start_idx : ele_search_end_idx),['=','{',' '],['}',' ','Q'])
n= n+1;
goto next_node_search_function
end
end
댓글 수: 0
채택된 답변
Jan
2022년 6월 27일
No, there is no GOTO in Matlab and it should be avoided strictly in good code.
Maybe:
function YourFunc
n = 123; % ???
for k = ele_search_start_edx : ele_search_end_idx
if data(k) =='C' && data(k+1) == '='
Element_arr(n) = extraxtBetween(data(ele_search_start_idx : ele_search_end_idx),['=','{',' '],['}',' ','Q'])
break;
elseif data(k) == 'N'
Element_arr(n) = extractBetween(data(ele_search_start_idx1 : ele_search_end_idx1),['=','{',' '],[' ','}'])
break;
elseif data(k) =='L' && data(k+1) == '='
Element_arr(n) = extraxtBetween(data(ele_search_start_idx : ele_search_end_idx),['=','{',' '],['}',' ','Q'])
break
end
end
next_node_search_function(ElementArr, n + 1)
end
댓글 수: 0
추가 답변 (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!