warning: format not a string literal, argument types not checked
I'm attempting to learn C and already I've run into an issue. I assume its
trivial but I need to know it. I have written:
char *seconds_to_string (guint seconds)
{
long days, hours, minutes;
char *time = NULL;
const char *minutefmt;
const char *hourfmt;
const char *secondfmt;
days = seconds / (60 * 60 * 24);
hours = (seconds / (60 * 60));
minutes = (seconds / 60) - ((days * 24 * 60) + (hours * 60));
seconds = seconds % 60;
minutefmt = ngettext ("%ld minute", "%ld minutes", minutes);
hourfmt = ngettext ("%ld hour", "%ld hours", hours);
secondfmt = ngettext ("%ld second", "%ld seconds", seconds);
minutefmt = ngettext ("%ld minute", "%ld minutes", minutes);
hourfmt = ngettext ("%ld hour", "%ld hours", hours);
secondfmt = ngettext ("%ld second", "%ld seconds", seconds);
char *fmt;
fmt = g_strdup_printf (_("%s %s %s"), hourfmt, minutefmt, secondfmt);
time = g_strdup_printf (fmt, hours, minutes, seconds);
g_free (fmt);
---------------------------------------------------------------------
return time;
}
warning in line with:
time = g_strdup_printf (fmt, hours, minutes, seconds);
Can anyone help please?
No comments:
Post a Comment