IAR上将数值打印成字符串

2019-07-15 16:51发布

本帖最后由 xmuac 于 2014-9-18 23:10 编辑

在“阿信509”的指点下,我要将一个数值打印成一个字符串,如将time=123 打印成 “123”,方法如下:#include <string.h>
uchar s[8]={''};
uint Time=1234567;
sprintf(s, "%d", Time);
make后出现了下面的问题:
Warning[Pe223]: function "sprintf" declared implicitly
Linking
Warning[w6]: Type conflict for external/entry "sprintf", in module main against external/entry in module ?sprintf; prototyped function vs K&R function
  /* In module main: */

  /* K&R Function, args 0, attr 0 */

  int (__cc_version2 sprintf)();

  /* In module ?sprintf: */

  /* Function, args 3, attr 0 */

  int (__cc_version2 sprintf)(char *,

                              char const *,

                              ...);

请问这些是什么意思,什么原因引起,应该如何正确消除警告?(运行结果会收到影响的。)





友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
xmuac
1楼-- · 2019-07-15 21:12
该问题解决了,原因是包含的头文件数不足。加个 #include <stdio.h> 问题就解决了。再次感谢 阿信509
阿信509
2楼-- · 2019-07-15 21:35
我是阿信,今天出去调试了刚回来,忘了告诉你加头文件了~~,
#include <stdio.h>
阿信509
3楼-- · 2019-07-16 01:49
你都解决了啊,没看见~~
还有,记得Memory model 要定义成Small模式

一周热门 更多>