I'm a big proponent of using the best possible `[x]str` function for C string manipulations. However, `Strings`'s are not C strings. That's what the `string_to_cstr_(len)` could be for, to copy it and most importantly NULL-terminate it, so that `[x]str` functions can be used on them.

However, if you do already have a Pascal string (what `String` basically is), it doesn't hurt to do the operations that are fastest with Pascal strings while still in Pascal string mode. Take for example copying: it's only a `memcpy` away with Pascal strings, but for C strings one needs `xstrlcpy` which implicitly does a `strlen`, which wouldn't work on most `String`'s anyway as they're not often NULL-terminated.