打印

在ads1.2中调试,编译sprintf

[复制链接]
1405|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mm7989680|  楼主 | 2008-9-10 17:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void DisPrintChar(float xx,uchar FormatSel)
{
    uchar i;
    uchar di[7];
    
    for(i=0;i<7;i++)
        di = 0;
    if(FormatSel!=0)                //功率格式
    {
        LcdPartClear(8,6,0,4,0);
        sprintf(di,"%4.1f",xx);       //3.1
        for(i=0;i<4;i++)
        {
           LcdDisBigASC(8,i+6,0,di-'0',0);    
        }
    }
    else
    {
        LcdPartClear(2,6,0,8,0);      //频率格式
        sprintf(di,"%6.3f",xx);
        for(i=0;i<6;i++)
        {
           LcdDisBigASC(2,i+6,0,di-'0',0);    
        }
     }    
}
编译到sprintf(di,"%4.1f",xx);       //3.1
显示出错c3028e : sprintf的第一个参数implicit cast of pointer to non-equal pointer
有用过的路过指点一下!谢谢

相关帖子

沙发
mm7989680|  楼主 | 2008-9-11 09:52 | 只看该作者

编译通过了

看了下ads的include,stdio.h中sprintf的第一个参数要为char *,改为char di[7];语法比keil严格

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

112

主题

371

帖子

4

粉丝