摘自《程序员面试宝典》
整数转化为字符串:
方法一:
//整数转化成字符串,可以采用加'0',再逆序的方法,整数加‘0’就会隐性转化成char类型的数。
#include<iostream>
#include<stdio.h>int main(void)
{
int num = 12345,j=0,i=0;
char temp[7],str[7];
while(num)
{
temp[i] = num%10+'0';
i++;
num = num/10;
}
temp[i] = 0;
printf(" temp=%s\n",temp);
i =i-1;
printf(" temp=%d\n",i);
//刚刚转化的字符串是逆序的,必须把它反转过来
while(i>=0)
{
str[j] = temp[i];
j++;
i--;
}
str[j]=0;
printf(" string=%s\n",str);
return 0;
}
方法二:使用itoa函数
#include<iostream>
#include<stdio.h>
int main(void)
{
int number = 12345;
char string[7];
itoa(number,string,10);
printf("integer = %d string = %s\n",number,string);
return 0;
}
字符串转化为整数:
可以采用减'0'再乘10累加的办法,字符串减'0'就会隐性转化为int类型的数
#include<iostream>
#include<stdio.h>
int main(void)
{
int j=0,i=0,sum=0;
char temp[7]={'1','2','3','4','5','\0'},str[7];
while(temp[i])
{
sum = sum*10+(temp[i]-'0');
i++;
}
temp[i] = 0;
printf(" sum=%d\n",sum);
return 0;
}