给定一个串,例如“aabbbcddddkkkmmmmaakkkk”我们希望去掉连续的重复字母,得出串:“abcdkmak”
#include<stdio.h>
int main(){
char *p = "aaaabbbbbccccffffdddeeeffggkk";
char buf[100];
char *q = p;
int i = 0;
for(;*q;){
if(p == q || *q != *(q - 1)) //前面 p已经 == q,所以后面的q - 1已经不进行计算 所以此时不越界
buf[i++] = *q;
q++;
}
buf[i] = '\0';
printf("%s\n",buf);
return 0;
}