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

1 回表示 (過去 30 日間)
Aakriti Srivastava
Aakriti Srivastava 2022 年 6 月 27 日
回答済み: Jan 2022 年 6 月 27 日
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 Center および File ExchangeLoops 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