删除字符串中相同的字符,例如:assadfggfhjjhkldfhgghkl, 输出为:dkldfkl #include "windows.h" #include<iostream> using namespace std; void delete_n(char* str, char *result, int nCnt) { int j=0,r=0; result[0] = str[0]; for(int k= 0;k< nCnt-1;k++) { j++; if( r<0 ) { result[0] = str[j]; r = 0; } else if( result[r] == str[j] ) { result[r] = '/0'; r--; } else { result[r+1] = str[j]; r++; } } r = r<0?0:r; result[r] = '/0'; } void test_delete_n() { char str[] = "assadfggfhjjhkldfhgghkl"; //"aaaa"; int nCnt = sizeof( str); char *result = new char[nCnt+1]; delete_n(str, result, nCnt); printf("%s", result); delete result; } int main(int argc, char* argv[]) { test_delete_n(); getchar(); return 0; }