[ZLG-MCU] 关于sprintf的问题

[复制链接]
 楼主| linhai2009 发表于 2010-3-30 13:00 | 显示全部楼层 |阅读模式
我用的MCU是LM3S316,开发环境是IAR5.3,我在代码中用到了sprintf函数,目的是想把一个整数转换成一个字符串。
相关代码:
#include <stdio.h>

void main
{
    char temp[20];
    int a=10;
    sprintf(temp,"%d",a);
    while(1);
}

编译通过,仿真时在while(1);处设置断点,程序执行到sprintf(temp,"%d",a);便无法往下执行。
查看.map文件,居然“9 600 bytes of readonly  code memory”已经用掉,注释掉sprintf(temp,"%d",a);则是“2 600 bytes of readonly  code memory”。相当无解。

请问哪位同学遇到过这个问题,有没有办法解决。
xiaoxin1986 发表于 2010-3-30 13:19 | 显示全部楼层
建议自己写个函数实现
寂寞男孩 发表于 2010-3-30 13:27 | 显示全部楼层
因为缺少真正的输出函数,比如uartPuts( )

建议在sprintf()函数之后跟一个,当然前提是要保证uartPuts( )的正确性
beny5566 发表于 2010-3-30 18:50 | 显示全部楼层
自己写吧。
swolf 发表于 2010-3-30 19:56 | 显示全部楼层
自己写个函数吧。
不是很难。
五谷道场 发表于 2010-4-1 15:18 | 显示全部楼层
不知楼主自己编出来了没有,共享一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

191

主题

1930

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部

191

主题

1930

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部