C++字符串和整数互转换

来源:互联网 发布:单片机串口转usb接线 编辑:程序博客网 时间:2024/06/06 08:46
                                    字符串转换成整数
#include<iostream>
#include<string>
#include<stdio.h>//printf的头文件 
#include <stdlib.h>  //atoi的头文件 
using namespace std;
 int main(){
/****************字符串转换成整数*****************/ 
//方法一:atoi函数 字符数组转换成整数 
 char str1[10]="123"; //实际上4个字符 
 int a = atoi(str1);
 printf("%d\n",a);   
/*
string str2="12345";
int b=atoi(str2); 
这种写法错误,()内必须是字符型数组 
*/
//方法二:求和法
char arr[]={'4','3','5','1','\0'};
int i=0,temp,sum=0;
  while(arr[i]){
    temp = arr[i]-'0';
    sum = sum*10+temp;
    i++;
  }
   printf("%d\n",sum); 
 
}
                                    整数转换成字符串

#include<iostream>
#include<string>
#include <stdlib.h>  //itoa的头文件 
using namespace std;
 int main(){
/****************整数转换成字符串*****************/ 
 //方法一:itoa函数 
 int num1=521; 
 char str1[10]; //实际上4个字符 
 itoa(num1,str1,10);
 cout<<str1<<endl;
//方法二:将整数的每位转换为字符,然后再逆序保存
int num=435,i=0,j=0;
char temp[7],str[7];
//将整数的每位转换为字符
   while(num){
   temp[i]=num%10+'0';
   i++;
   num=num/10;
    }
   temp[i] = 0;  //最后加上字符串结束符'\0'
   //cout<<temp;输出结果是534
   //逆序保存 
   i--;
   while(i>=0){
    str[j]=temp[i];
    i--;
    j++;
  }
  str[j]=0;   //最后加上字符串结束符'\0'
  cout<<str;//输出结果是435
}
原创粉丝点击