Есть функция возвращающея ghar *
#define MAX_BUF 10
gchar buf[MAX_BUF];
...
result = 12.345;
//g_print( "result = %g.\n", 12.345 );
return g_ascii_formatd(buf, MAX_BUF, "%g", result );
На следующий вызов уже нормально: Returned string - 12.345
Но если расскоментировать строку с g_print, то вывод с первого раза нормальный. С чем это может быть связанно? Как исправить?