Napisałem program z Symfonii C++ Standard, wyd. 3 z 2008r, ćwiczenie XXIII/218, w skrócie: mamy napisać funkcję, która do końca stringu będącego w jednej tablicy dołączy string będący w innej tablicy, funkcja powinna przerwać w przypadku zapełnienia całej tablicy.
Jak zwykle będę wdzięczny za uwagi, spostrzeżenia, komentarze i wskazówki.
Ćwiczenie było po rozdziale o tablicach, więc nie piszcie o żadnych vectorach, klasach itp
To ucz się pisać inne funkcje/programy. Pewne funkcje są w bibliotekach po to, żeby z nich korzystać, bo są najlepiej zoptymalizowane itd. Po co sobie utrudniać życie
void dolacz(char docelowa[], int rozmiar_docelowej, char zrodlowa[]) { int licznik_doc=0,licznik_zro=0; while(docelowa[licznik_doc++]) {} //ilosc liter w tablicy docelowej, od tego indeksu zaczynamy doklejanie while(zrodlowa[licznik_zro++]) {} //ilosc liter w tablicy zrodlowej rozmiar_docelowej-=--licznik_doc; if(licznik_zrorozmiar_docelowej) licznik_zro=rozmiar_docelowej; for(int i=licznik_doc,k=0;klicznik_zro; ++i,++k) docelowa[i]=zrodlowa[k]; // wlasciwe doklejanie } [/code]
Z tym że naprawdę nie wiele się nauczysz przepisując gotowe funkcje stosując dziwne ograniczenia.
EDIT. Poprawiłem kilka drobnych błędów.