#include "mathlink.h"
/* read a UTF-8 encoded string from a link and then release the memory to MathLink for deallocation */
void f(MLINK lp)
{
const unsigned char *string;
int number_of_bytes;
int number_of_characters
if(! MLGetUTF8String(lp, &string, &number_of_bytes, &number_of_characters))
{ /* unable to read the UTF-8 encoded string from lp */ }
/* ... */
MLReleaseUTF8String(lp, string, number_of_bytes);
}