我想检查一个字符是否在字符数组中出现两次,但是
strchr()
将返回第一次出现的字符的位置。
我正在考虑像 Python 那样对数组进行切片
arr[3:]
,从第三个元素开始考虑。 C有这样的能力吗?
如果没有,这个问题的最佳解决方案是什么?
我可以用
for loop
、if else
和global variables
自己做吗?
但是
将返回第一个出现的字符的位置。strchr()
您可以拨打
strchr
两次:
bool does_char_exist_twice( const char *str, char c )
{
const char *p;
p = strchr( str, c );
if ( p == NULL )
return false;
return strchr( ++p, c ) != NULL;
}