想用sprintf写成05应该怎么写?

lockhall 2007-05-12 08:45:45
#include "stdio.h"
#include "stdlib.h"

int main()
{
int i = 5;
char *buf;
buf = (char *)malloc(10*sizeof(10));
sprintf(buf, "%d", i);
printf("%s",buf);
getchar();
return 0;
}

我想buf里是"02",而不是2,该怎么改/?
...全文
284 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengdream 2007-05-13
  • 打赏
  • 举报
回复
sprintf(buf,"%02d",i);
sprintf(buf,"0%d",i);
getch();
  • 打赏
  • 举报
回复
sprintf(buf, "%03d", i);
lockhall 2007-05-12
  • 打赏
  • 举报
回复
手误了

应该是buf = (char *)malloc(10*sizeof(char));
就是给buf分配内存的.
lb_hit 2007-05-12
  • 打赏
  • 举报
回复
好奇问一句:
buf = (char *)malloc(10*sizeof(10));
~~~~~~~~~~~~~这是干什么?
believefym 2007-05-12
  • 打赏
  • 举报
回复
sprintf(buf, "%02d", i);
celftj 2007-05-12
  • 打赏
  • 举报
回复
CString szTemp;

szTemp.Format("%.2d", time.wMonth);
我试过是行的
celftj 2007-05-12
  • 打赏
  • 举报
回复
sprintf(buf, "%.2d", i);

试试

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧