一、int to string(整型到字符串)
(1)函数:int sprintf(char *buffer, const char *format [, argument] ...);
头文件:#include<stdio.h>
例子:
#include<iostream>
#include<stdio.h>
using namespace std;
int main(){
int ss;
char temp[64];
string str;
ss = 1000;
sprintf(temp, "%d", ss);
string s(temp);
//调用string的方法
cout<<s.c_str()<<endl; //1000
cout<<s.size()<<endl; //长度为4
}
输出:
1000
4
(2) 函数:char * _itoa(int value, char *string, int radix);
头文件:#include<stdlib.h>
例子:
#include<iostream>
#include<stdlib.h>
using namespace std;
int main(){
char buffer[20];
int i=3445;
_itoa(i,buffer,10);
string s(buffer);
cout<<s<<endl;
}
输出:
3445
(3)函数:stringstream()
头文件:#include<sstream>
例子:
#include<iostream>
#include<sstream>
using namespace std;
int main(){
int hello = 4;
stringstream ss;
ss<<hello;
string s=ss.str();
//调用string的方法
cout<<s.c_str()<<endl;
}
输出:
4
(4)to_string函数
int i=123;
string s=to_string(i);
二、char型数字转换为int型
(1)使用char-'0' 法
#include<iostream>
using namespace std;
int main(){
<span style="white-space:pre"> </span>char a[] = "32";
<span style="white-space:pre"> </span>int m = a[0]-'0';
<span style="white-space:pre"> </span>cout<<m<<endl;
}
输出结果
3
(2)使用atoi函数
头文件:#include<stdlib.h>
例子:
#include<iostream>
#include<stdlib.h>
using namespace std;
int main(){
char str[] = "1234";
int a=atoi(str);
cout<<a<<endl;
}
输出:
1234
三、介绍两个函数
(1)itoa函数
功能:把一整数转换为字符串
函数原型:char *itoa(int value, char *string, int radix);
头文件:#include<stdlib.h>
参数:
value:待转化的整数
radix:是基数的意思,即先将value转化为radix进制的数,范围介于2-36,比如10表示10进制,16表示16进制。
string:保存转换后得到的字符串
例子:
#include<iostream>
#include<stdlib.h>
#include<stdio.h>
using namespace std;
int main(){
int number = 1234;
char string[25];
itoa(number,string,10);
cout<<number<<endl;
cout<<string<<endl;
return 0;
}
输出:
1234
1234
(2)atoi函数
功能:把字符串转换成整型
函数原型:int atoi(const char *nptr);
头文件: #include<stdlib.h>
例子:
#include<iostream>
#include<stdlib.h>
#include<stdio.h>
using namespace std;
int main(){
int n;
char str[] = "1234";
n = atoi(str);
cout<<n<<endl;
return 0;
}
输出:
1234
(3)char转string
string s(char *);
(4)string 转char *
char *p = string.c_str();