如何计算C字符串中出现的次数/?
我可以做这个:
int countSlash(char str[])
{
int count = 0, k = 0;
while (str[k] != '\0')
{
if (str[k] == '/')
count++;
k++;
}
return count;
}
Run Code Online (Sandbox Code Playgroud)
但这不是一种优雅的方式; 有关如何改进它的任何建议?
strchr 会做一个更小的循环:
ptr = str;
while ((ptr = strchr(ptr '/')) != NULL)
count++, ptr++;
Run Code Online (Sandbox Code Playgroud)
我应该补充一点,为了简洁起见,我并不赞同简洁,而且我总是选择最清晰的表达方式,所有其他条件都相同.我发现strchr循环更优雅,但问题中的原始实现是明确的并且存在于函数内部,所以我不喜欢其中一个,只要它们都通过单元测试.