把字符串中相邻的字符去掉,只保留一个,即处理字符串“abcccddfefeddd”后,输出“abcdfefed”。
工具:vs2005
程序如下:
char *deal_string(char * const string)
{
char *str = string;
char *next = string + 1;
int i = 0;
if (*str == NULL) return NULL;
char *dst = (char *)malloc(strlen(string) + 1);
while(*str != '/0' && *next !='/0')
{
if(*str == *next)
{
next++;
}
else{
dst[i++] = *str;
str = next;
next ++;
}
}
dst[i++] = *str;
dst[i] = '/0';
return dst;
}
int _tmain(int argc, _TCHAR* argv[])
{
char *string = "aaa";
printf("%s %s", deal_string(string), string);
getchar();
return 0;
}
结果:a