Agreed, it is pretty easy to avoid the issue by using a library or framework, and bstring looks nice.
Still, I wish something like that was simply built-in, as external string libraries can cause interoperability issues: Each framework defines its own string handling functions and format, making it neccesary to convert between them in an application, if you use them together.
(the worst thing is that this problem still exists with C++ as of today, even though it has a built-in string people insist on rolling their own)
There are some nice safe string libraries out there, like this one:
http://bstring.sourceforge.net/