Mamy na uczelni jakiegoś magistra co daje dosyć ciezkie zadania w porównaniu z innymi grupoami. Mam takie zadanie na uczelni:
Napisz funkcję wstrins pozwalającą na wstawienie do danego ciągu znaków innego ciągu. Ciągi te
mają być kodowane za pomocą kodowania UTF-8.
Funkcja wstrins ma posiadać następującą postać:
char* wstrins
(char* dest, size_t* dest_size, size_t where, char* src, size_t src_size);
gdzie:
dest ciąg docelowy,
dest_size wskaźnik na rozmiar ciągu docelowego w bajtach, także jako parametr wyjściowy,
where numer ZNAKU, za którym ma zostać wstawiony drugi ciąg,
src ciąg wstawiany,
src_size rozmiar ciągu wstawianego w bajtach,
return adres ciągu docelowego.
O ile rozumiem jak napisać funkcję łączą ciągi tak nie wiem jak zabrać sie za to UTF-8. Mógłby mi ktoś po krótce wytłumaczyć jak kodować znaki UTF-8 w języku C, tak żeby to zgadzało sie z tym zadaniem.
I prosiłbym również o jakas wskazówkę dotyczącą tego size_t. Nie rozumiem za bardzo tego zdania "wskaźnik na rozmiar ciągu docelowego w bajtach, także jako parametr wyjściowy,". Jak to ogarnąć? Jak to wykorzystać żeby działało.
Byłbym bardzo wdzięczny bo kompletnie nie rozumiem a zależy mi na dobrym zrobieniu tego zadania.