Usuń znaki z łańcucha w C

Mam tylko dostęp do „C” i muszę zastąpić znaki w tablicy znaków. Nie wymyśliłem żadnych czystych rozwiązań dla tej stosunkowo prostej procedury.

Przekazałem tablicę znaków, na przykład:

char strBuffer[] = "/html/scorm12/course/course_index.jsp?user_id=100000232&course_id=100000879&course_prefix=ACQ&version=2&scorm_version=3&roster_id=100011365&course_name=Test%20Course%201.2&mode=browse&course_number=0000&mode_id=1";

Muszę zmodyfikować ten bufor, aby zastąpić wszystkie& z&. Wynikowy bufor nie musi zastępować strBuffer (można utworzyć nowy bufor).

Jakieś sugestie?

Edytować:

W przeszłości wykonałem funkcję strstr w pętli, ale szukałem prostszego rozwiązania, być może odpowiednika C dla metody String.Replace.

Edytować:

Na moje najpilniejsze potrzeby potrzebuję następujących rzeczy.

char strBuffer[] = "/html/scorm12/course/course_index.jsp?user_id=100000232&course_id=100000879&course_prefix=ACQ&version=2&scorm_version=3&roster_id=100011365&course_name=Test%20Course%201.2&mode=browse&course_number=0000&mode_id=1";
char strTemp[1024];
char *s = (char*)strBuffer;
int i=0;

while (*s)
{
    strTemp[i++] = *s;
    if (strncmp(s,"&",5) == 0)
    {
        s += 5;
    }
    else
        s++;
}
strTemp[i] = 0;

Przyszłe modyfikacje:

Utwórz funkcję narzędzia do przechowywania tej funkcji.Podaj ciąg wyszukiwania jako parametr.Określ długość ciągu wyszukiwania, aby zakodowane 5 można usunąć.Dynamicznie przydzielaj zmienną strTemp.Błąd sprawdzania pustych ciągów znaków i znaków nie został znaleziony.

EDYTOWAĆ:

Stworzyłem post na blogu, aby szczegółowo opisać kroki i zapewnić bardziej elastyczne rozwiązanie:

http://www.solutionmaniacs.com/blog/2012/11/25/c-removereplace-characters-in-a-string.html

questionAnswers(4)

yourAnswerToTheQuestion