Новые возможности в подставляемых функциях C99
А как насчет этого ? Выглядит хорошо, по крайней мере, соответствует некоторым вашим критериям, но я им не пользовался, поэтому необходимо проверить. По крайней мере, я вижу здесь лицензию BSD, так что это может быть полезно для начала.
Glib может многое из этого, но это LGPL: http://library.gnome.org/devel/glib/stable/
Я не думаю, что вы можете найти счетчик ссылок в любой строковой библиотеке на C ... Это не так-то просто сделать. Вы можете сами сделать тонкую обертку вокруг gchar *
, если она вам понадобится.
Что-то вроде ICU может быть тем, что вам нужно. Он под лицензией Open Source License и не совсем абстрагируется от char * / wchar_t * (см .: http://icu-project.org/docs/papers/unicode_wchar_t.html ), но это может быть то, что вам нужно.