[スレッド全体]

2015/11/23 (月) 16:56:32 ds14050  
Mozilla/5.0 (Windows NT 6.0; WOW64; rv:22.0) Gecko/20100101 Firefox/22.0
[2316] Re:特定文字を入力&操作後に Runtime Error
スマートインデント関連で無限ループに入ってメモリを食いつぶしている感じです。

n = 0 から n = nLineLen2-1 までのループの中で n に k を代入してるのがこちらです。
http://sourceforge.net/p/sakura-editor/code/4035/tree/sakura/trunk2/sakura_core/types/CType_Cpp.cpp#l1427
デバッガでは n = 1; k = 0; nLineLen2 = 3 に見えますので、n = 1 のターンが永遠に続きます。

行コメントを見つけたときに通るパスのようなので、行末までスキップ、という
コードなのかなと思いますが、n = k の k に何を期待しているのか、k という
ほとんど無名に等しい変数が何者なのか、よくわかりません。

2015/11/23 (月) 20:10:23 もか  
Mozilla/5.0 (Windows NT 6.3; WOW64; rv:42.0) Gecko/20100101 Firefox/42.0
[2317] Re2:特定文字を入力&操作後に Runtime Error
n=k
↓
n=nLineLen2 でよさそうですね。
だいぶ前に書いたので忘れたけどループの処理を見た感じだと
for(n=0;n<k;n++)にしたほうが若干無駄が少ないかもしれません

2015/11/24 (火) 17:24:00 ds14050  
Mozilla/5.0 (Windows NT 6.0; WOW64; rv:22.0) Gecko/20100101 Firefox/22.0
[2318] Re3:特定文字を入力&操作後に Runtime Error
> for(n=0;n<k;n++)
についてはコメントできるほど知りませんが、

> n=nLineLen2
については、ループ継続判定の前に n++ されることを考えると
n=nLineLen2-1 の方が適切ではないかなと思います。
結果は同じですけどね。

[▼次のスレッド]
INCM/CMT
Cyclamen v3.81
[ut:0.000][st:0.000]