我有以下函数,它是Trie结构实现的一部分:
int alpha_char_strlen (const AlphaChar *str) {
    const AlphaChar *p;
    for (p = str; *p; p++) ;
    return p - str;
}
任何人都可以帮助我解释for循环的条件是如何保持的,在这种情况下究竟是什么条件?
注意:AlphaChar只是一个带unsigned int类型的typedef,该函数计算AlphaChar字符.
条件*p与*p != 0(如果*p是原始类型)相同.也就是说,你继续递增指针p直到它指向零.换句话说,您将其str视为指向零终止数组的指针.
| 归档时间: | 
 | 
| 查看次数: | 80 次 | 
| 最近记录: |