题目是这样的
求一个字符串中连续字母的个数
比如I have a book. : 1
I have a dog. : 0
I haavee aa dogg : 4
#include <windows.h>
#include <iostream>
using namespace std;
void GetDupStringCount( const char* pStr, int &iOut )
{
if( !pStr )
return;
int iLen = strlen( pStr );
if( !iLen )
return;
char cValue = *pStr;
int iNumCount = 0;//重复个数
iOut = 0;//设置为0
int iIndex = 0;//当前索引
while( iLen-- )
{
if( !( ( cValue >= 'a' && cValue <= 'z' ) || ( cValue >= 'A' && cValue <= 'Z' ) ) )
{
cValue = *( pStr + ++iIndex );
iNumCount = 0;
continue;
}
if( cValue == *( pStr + iIndex ) )
{
iNumCount++;
}
else
{
cValue = *( pStr + iIndex );
if( iNumCount > 1 )
{
iOut++;
iNumCount = 0;
--iIndex;
}
}
iIndex++;
}
}
int main( int argc, char* argv[] )
{
char szStr[] = " I haveee a book! ";
int iOut = -1;
GetDupStringCount( szStr, iOut );
cout << iOut << endl;
return 0;
}