This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

printing float values gets no result

I'm trying to use printf with the %f format specifier to display some floating point values but nothing gets printed. I can print integers values just fine using the %d format. Has anyone else had this problem? I'm using the latest Keil C compiler and libraries on a Triscend 8051.
Thanks,

Miles

My test code looks something like this:

void test()
{

float x = 1.56;

printf( "test = %f",(float)x);
}

It will always print "test = "

Parents
  • I figured it out, although I still don't quite understand what happened. I had an older routine that I wrote named Printf, which did not have a %f parser in it. Somehow the linker was calling that routine, even though I was spelling "printf" in the code with a lower case 'p'. When I removed all the calls to "Printf", then I guess it had no choice except to call the library "printf" function.

Reply
  • I figured it out, although I still don't quite understand what happened. I had an older routine that I wrote named Printf, which did not have a %f parser in it. Somehow the linker was calling that routine, even though I was spelling "printf" in the code with a lower case 'p'. When I removed all the calls to "Printf", then I guess it had no choice except to call the library "printf" function.

Children