関連記事
- 【#CSHARP】ソリューション内でサービス,Winformアプリを混在で作成させ,バイナリ出力先を同じにするとサービスが起動しない 【2024年02月08日(木)】
- 【#CPP】出先でC++にてライブラリの緊急実装!脳死したーキョムリすぎるー 【2024年01月15日(月)】
- 【#PHP】謎な #Laravel 案件 引き渡したじ 【2024年01月11日(木)】
- 【C#】謎な改造アプリ,SIMD命令を導入して高速化しようか,思案中 【2023年11月14日(火)】
- Javaの”やらかし”でC#と人気逆転か 激変プログラミング言語人気ランキング 【2023年10月18日(水)】
構造化プログラミングでは,基本,禁じ手のgoto文
最近は見ることも極端に減って
昔は,オイラも,まったく使わなかったんですわ>C言語
でもねぇ...
多重ループの完全ループアウトのとき
if文やら使って構造を作るより,条件成り立ったら,gotoで飛ばしてしまえ!な派に改宗したり(爆
いや,ループ構造が汚くなって
かえって不具合呼ぶことが多くなったもんでなぁ...
して,Delphiでのgoto文
ちょいと特殊で
gotoのジャンプ先を,LABEL命令であらかじめ定義しないといけなかったり
こんな感じ
//**********************************************
//受信バッファの中身を検索してEOT(0x04)があるか,返す
//
//**********************************************
function TSocketIO.IsReceiveDataEnd: Boolean;
var
i : Integer;
j : Integer;
st : string;
label IsReceiveDataEnd_J1; //<---これがいる
begin
result := false;
for i := 0 to FReceiveBuf.Count - 1 do
begin
st := FReceiveBuf[i];
for j := 1 to Length(st) do
begin
if st[j] = char($04) then
begin
result := true;
goto IsReceiveDataEnd_J1;
end;
end;
end;
IsReceiveDataEnd_J1:
end;
[/delphi]
まぁ,goto文,多用すると,スパゲッティプログラム(死語)の元なんで
エッセンス程度に使用するのがよろしいか,と
コメント
イオンモール宮崎の辺りにイノシシが登場した,らしい
コンビニ誤交付、富士通に行政指導 原因究明と再発防止を要求―総務省
【#桜】花立公園で桜見物してきた!都井岬まで足を伸ばした!遠かった(爆
【#大谷翔平】水原一平氏、米連邦検察が銀行詐欺容疑で訴追…大谷翔平選手の口座から24億5千万円以上を不正送金
【#緊急地震速報】宮崎県日南市で震度5弱 津波の心配なし M5.2(24/2/8)
ずっと天気が悪いのぉ.菜種梅雨とはよく言ったものやじ(24/4/5)
【#暴風警報】宮崎市に暴風警報発令(24/3/26)
【#大谷翔平】米NBC 水原一平氏の学歴詐称を報道
【#桜】国富:大坪の一本桜を眺めてきた.天気が悪かったモルモルモル