トライ構造の実装の一部である次の関数があります。
int alpha_char_strlen (const AlphaChar *str) {
const AlphaChar *p;
for (p = str; *p; p++) ;
return p - str;
}
forループの条件がどのように保持されるのか、そしてこの場合の条件は正確に何なのかを説明してくれる人はいますか?
注: AlphaChar は単に unsigned int 型の typedef であり、関数は AlphaChar 文字をカウントします。