http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54943
--- Comment #2 from Santhosh Kumar Selvaraj <selvaraj.santhosh at gmail dot com> 2012-10-17 11:41:00 UTC --- int main() { float floatValue = 100.0; char buffer[32]; sprintf (buffer, 32, "%f", floatValue); printf ("The string is : %s\n", buffer); return 0; } Result: The string is : 100 (arm-elf) -> GCC less than V3.0 The string is : 5.333 (arm-eabi) -> GCC 4.7.1