我用avr studio编译代码,实例代码如下:
#include <avr/io.h>
#include <stdio.h>
#define uchar unsigned char
#define uint unsigned int
/*----------------------------------
主程序
-----------------------------------*/
int main(void)
{
uchar j;
char str[6]={0,0,0,0,0,0};
double f=1.3245;
uint i=1234;
sprintf(str,"%5.2f",f);
j=1;
i=2;
i=3;
DDRB=0XFF;
while(1);
}
我想得到的结果是" 1.32" 整数部分位数不足则补空格
可是结果却是" ?",4个空格一个问号。
另外,我链接了libprintf_flt.a libm.a
传递了link option:-Wl,-u,vfprint
可还是无用。
请高手指教,如何解决?
谢谢! |