可以使用两个指针来去除重复字符。
首先,创建一个空的字符串,用于存储结果。
然后,遍历原始字符串中的每一个字符。对于每个字符,检查它是否已经出现在结果字符串中。如果没有出现,则将该字符添加到结果字符串中。
最后,返回结果字符串。
下面是一个示例代码:
#include <stdio.h>#include <string.h>void removeDuplicates(char* str) {int len = strlen(str);char result[len];int index = 0;for (int i = 0; i < len; i++) {int j;for (j = 0; j < index; j++) {if (str[i] == result[j]) {break;}}if (j == index) {result[index++] = str[i];}}result[index] = '\0';strcpy(str, result);}int main() {char str[] = "Hello World!";removeDuplicates(str);printf("String after removing duplicates: %s\n", str);return 0;}这个代码中,removeDuplicates函数接受一个字符数组作为参数,并修改原始字符串,去除重复字符。main函数中的示例代码演示了如何调用该函数。输出结果为:
String after removing duplicates: Helo Wrd! 
