#include<iostream>
using namespace std;
char *delrep_char(char *str)
{
char *index,*end,*equal;
index=end=equal=str;
while(*equal)
{
while(*index){
if(*equal==*index)
index++;
else
{
*++end=*index;//把后一位往前移动。
++index;
}
}//while
*++end='\0';
equal++;
end=index=equal;
}
*equal='\0';
return str;
}
int main()
{
char arr[]="aaabcddduuuuuuuea";
printf("%s",delrep_char(arr));
}
//就不一一解释了,相信大家能推出来的,先找出和第一个重复的字符,然后index往后移动找到首个不重复的复制给end指针,然后end和index同时向后移动再比较。以此类推。