做题中常遇到字符串转化为数字,数字转化为字符串等,自己转化比较麻烦,C语言提供了几个标准库函数,可以将任意类型(整型、长整型、浮点型等)的数字转换为字符串。
1.整数转化为字符串。(itoa)
#include<stdio.h>
#include<stdlib.h>
int main()
{
int num=2333;
char s[20];
itoa(num,s,10);
printf("%s\n",s);
}
itoa()函数有3个参数:第一个参数是要转换的数字,第二个参数是要写入转换结果的目标字符串,第三个参数是转移数字时转化为几进制。在上例中,转化为10进制。
itoa()函数不是一个标准的c函数,是Windows特有的,若是Linux,则请用sprintf。当然sprintf在windows也可以用。
#include<stdio.h>
int main()
{
int num=2333;
char s[20];
sprintf(s,"%d",num);
printf("%s\n",s);
}
2.字符串转化为int型整数。
#include<stdio.h>
#include<stdlib.h>
int main()
{
char s[20]="2333";
int num=atoi(s);
printf("%d\n",num);
}
(当然也可转化为浮点型,浮点型对应的是atof,long对应的是atol,long long对应的是atoll,遇到不可读的地方终止)。