keil c中如何将整型转化为字符串
在keilc中不支持sprintf(),itoa(),那还有什么方法可以实现inta转换为char*str呢,请各位大侠帮忙!大侠,能解释一下吗?看不懂啊...
在keil c中不支持sprintf(),itoa(),那还有什么方法可以实现int a转换为char * str呢,请各位大侠帮忙!
大侠,能解释一下吗?看不懂啊 展开
大侠,能解释一下吗?看不懂啊 展开
5个回答
展开全部
可以使用sscanf,就像sprintf将整型数转换成字符串输出一样,逆运算(KEILC 中scanf和printf确定了通过单片机串行口完成输入输出模式,除非做了修改,一般实际中不用)。
给你个例子:
unsigned char string[5]={"1234"};
unsigned int n;
sscanf(string,"%u",&n); //string是字符串,%u是格式控制串,u是无符号十进制数,&n是变量n的地址。
printf ("%d\n",n); //可在KEIL C 开发环境中输出观察
你可以把上面这部分代码放到KEIL C中的HELLO.C程序中观察验证一下。
给你个例子:
unsigned char string[5]={"1234"};
unsigned int n;
sscanf(string,"%u",&n); //string是字符串,%u是格式控制串,u是无符号十进制数,&n是变量n的地址。
printf ("%d\n",n); //可在KEIL C 开发环境中输出观察
你可以把上面这部分代码放到KEIL C中的HELLO.C程序中观察验证一下。
展开全部
你是要把数字转换成字符串吧、
char ch[3];
int i=345;
ch[0]=i/100+48; //取百位
ch[1]=(i/10)%10+48; //取十位
ch[2]=i%10+48; //取个位
就这个思路吧~
还有keil C中没有文件操作的函数、
char ch[3];
int i=345;
ch[0]=i/100+48; //取百位
ch[1]=(i/10)%10+48; //取十位
ch[2]=i%10+48; //取个位
就这个思路吧~
还有keil C中没有文件操作的函数、
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sprintf这个函数是有的,
sprintf()在stdio.h里面.
itoa这个倒是没得。
atoi这个有。
自己写个itoa也不难。不自己写的话,用sprintf这个函数,还要多用差不多2K的代码。
sprintf()在stdio.h里面.
itoa这个倒是没得。
atoi这个有。
自己写个itoa也不难。不自己写的话,用sprintf这个函数,还要多用差不多2K的代码。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
那你就机灵点
FILE *fp=fopen("cl.txt","rw+");
fprintf(fp,"%d",a);
str=malloc(20);
fscanf(fp,"%s",&str);
记住用完后:
free(str);
FILE *fp=fopen("cl.txt","rw+");
fprintf(fp,"%d",a);
str=malloc(20);
fscanf(fp,"%s",&str);
记住用完后:
free(str);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
自己写一个itoa()函数不就行了吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询