UTF-8 специально разработан таким образом, что многие побайтно-ориентированные строковые функции продолжают работать или требуют лишь незначительных изменений.
Например, функция
C strstr
будет отлично работать до тех пор, пока оба ее ввода являются допустимыми строками UTF-8 с нулевым окончанием. strcpy
работает нормально, пока его входная строка начинается с границы символа (например, возвращаемое значение strstr
).
Так что вам может даже не понадобиться отдельная библиотека!