>【再帰処理】というのは、HSPでは難しいというのを過去ログで見かけ
その人にとって再起処理が難しかっただけでしょう。
まあ、どれをローカル変数にすればいいかの判断が難しいと言えば
難しいかもしれませんが。
>力技でも可能そうではあるんですが、
たぶん、すべての再起処理はループに還元できるはずですが、
再起呼び出しに適した処理をループで書く方が難しいです。
#include "hspext.as"
#module
#defcfunc count str p1, local dirs, local n
sdim files,32000
dirlist files,p1+"\\*.*",1: n=stat
sdim dirs,32000
dirlist dirs,p1+"\\*.*",5: ndir=stat
if ndir>0 {
sdim dir,260
repeat ndir
notesel dirs
noteget dir,cnt
n+=count(p1+"\\"+dir) ;再帰呼び出し
loop
}
return n
#global
sdim dir,260
selfolder dir,"指定フォルダ以下の総ファイル数を数えます": c=stat
if c: end
mes dir+"\nの下の総ファイル数は"+count(dir)+"です"