Lions' 本ぼっち読み (24)
久々に C のコード読んで砂漠に。
最近、きちんと読んでないからなのかどうか、以下のループは何故機能するのか、ってあたりが直感的に分かりませんでした。ヤバい。
3766 spl5(); 3767 if(callout[0].c_time <= 0) { 3768 p1 = &callout[0]; 3769 while(p1->c_func != 0 && p1->c_time <= 0) { 3770 (*p1->c_func)(p1->c_arg); 3771 p1++; 3772 } 3773 p2 = &callout[0]; 3774 while(p2->c_func = p1->c_func) {
上記、3774 の条件が比較に見えてました。3774 から始まる繰り返しで呼び出した分の要素を削除して前にツメている処理になってます。
明日の朝練では 3787 以降を確認の方向で。