C语言 int/float/double 数值转成字符串的方法或者函数
譬如,有inta=1234;由a得到字符串"1234"如何实现?还请问一下itoa这个函数要哪个头文件?还是不需要?...
譬如,有
int a=1234;
由a得到字符串 "1234"
如何实现?
还请问一下
itoa这个函数要哪个头文件?还是不需要? 展开
int a=1234;
由a得到字符串 "1234"
如何实现?
还请问一下
itoa这个函数要哪个头文件?还是不需要? 展开
展开全部
对于int型,可以调用函数itoa。
char*itoa(int value,char*string,int radix);
功能为将任意类型的数字转换为字符串。
int value 被转换的整数,char *string 转换后储存的字符数组,int radix 转换进制数,如2,8,10,16 进制等。
float和double类型没有特定的转换函数。
不过不论是float, double还是int,都可以通过sprintf函数进行转换。
sprintf类似于printf,都是按照格式化字符串输出参数到目标。不过printf是输出到终端,而sprintf是输出到第一个参数的字符串中。
定义
int i;
float f;
double d;
再定义字符串空间
char buf[100];
调用
sprintf(buf, "%d",i);
sprintf(buf, "%f",f);
sprintf(buf, "%lf",d);
就可以分别把int, float, double转换成值对应的字符串。
char*itoa(int value,char*string,int radix);
功能为将任意类型的数字转换为字符串。
int value 被转换的整数,char *string 转换后储存的字符数组,int radix 转换进制数,如2,8,10,16 进制等。
float和double类型没有特定的转换函数。
不过不论是float, double还是int,都可以通过sprintf函数进行转换。
sprintf类似于printf,都是按照格式化字符串输出参数到目标。不过printf是输出到终端,而sprintf是输出到第一个参数的字符串中。
定义
int i;
float f;
double d;
再定义字符串空间
char buf[100];
调用
sprintf(buf, "%d",i);
sprintf(buf, "%f",f);
sprintf(buf, "%lf",d);
就可以分别把int, float, double转换成值对应的字符串。
展开全部
itoa能把整数转换为字符串,但它不是C语言标准库函数。
其实这么简单的问题,自己写一个啦。
把int 的 1234 用取模逐位地取出来,跟 0~9 比较,再转化为字符。
效率肯定比itoa低,但好歹能锻炼自己的实现能力。
其实这么简单的问题,自己写一个啦。
把int 的 1234 用取模逐位地取出来,跟 0~9 比较,再转化为字符。
效率肯定比itoa低,但好歹能锻炼自己的实现能力。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdlib.h>
#include <stdio.h>
int main(void)
{int number;
char string[25];
scanf("%d",&number);
itoa(number, string, 10);
printf("integer = %d string = %s\n", number, string);
return 0;
}
atoi: 把字符串转换成整型数
itoa:把整数转换为字符串
#include <stdio.h>
int main(void)
{int number;
char string[25];
scanf("%d",&number);
itoa(number, string, 10);
printf("integer = %d string = %s\n", number, string);
return 0;
}
atoi: 把字符串转换成整型数
itoa:把整数转换为字符串
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询