Is there any equivalent keyword 'goto' in matlab not in simulink but in matlab coding

1 次查看(过去 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

采纳的回答

Jan
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 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

产品


版本

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by