一、整数转换为字符串
解析:整数转化成字符串,可以采用加’0’,再逆序的方法,整数加’0’就会隐性转化成char类型的数。
代码:
加’0’是关键!!!!!
#include<iostream>
#include<stdio.h>
using namespace std;
int main()
{
int num=12345, i=0, j=0;
char temp[7], str[7];
while(num)
{
temp[i]=num%10 + '0';//整数->字符串:+'0'!!!
i++;
num = num/10;
}
temp[i]=0;//!!!
printf("temp = %s\n", temp);
i=i-1;//最后一个数字在i-1处
while(i>=0)
{
str[j]=temp[i];
j++;
i--;
}
str[j]=0;//!!!
printf("string = %s\n", str);
return 0;
}
结果:
temp = 54321
string = 12345
Process returned 0 (0x0) execution time : 3.168 s
Press any key to continue.
二、字符串转换为整数
减’0’是关键!!!!!
#include<iostream>
#include<stdio.h>
using namespace std;
int CharToInt(char *str)
{
int num=0;
while(*str) //str是字符串的首字母的地址
{
num = num*10;//因为是从左至右对字符串进行扫描,每得到一位都要乘以10
num += *str-'0';//str是一个字母的地址,*str相当于得到该字母
str++;//将str指向下一个字母的地址
}
return num;
}
int main()
{
char str[7]={'1','2','3','4','5','\0'};
int num = CharToInt(str);
printf("转换为整数是:%d", num);
return 0;
}
结果:
转换为整数是:12345
Process returned 0 (0x0) execution time : 0.092 s
Press any key to continue.