int转char*
使用_itoa(int,char*,int)//要转的数字,字符串,进制
int main()
{
int num1 = 123;
int num2 = 456;
char str[10];
char *temp = _itoa(num1,str,10);
printf("str=%s",str);
printf("temp=%s",temp);
system("pause");
return 0;
}
char*转int
使用atoi(char*)//字符串,返回值是转之后的int
```cpp
int main()
{
char *str = "123456";
int temp = atoi(str);
printf("temp=%d",temp);
system("pause");
return 0;
}
int转string
```cpp
#include<iostream>
using namespace std;
#include<sstream>
int main()
{
int num1 = 123;
string str;
stringstream ss;
ss<<num1;
ss>>str;
cout<<str;
system("pause");
return 0;
}
string转int
#include<iostream>
using namespace std;
#include<sstream>
int main()
{
int num1 ;
string str = "123456";
stringstream ss;
ss<<str;
ss>>num1;
cout<<num1;
system("pause");
return 0;
}
string转char*
string可以被看成是以字符为元素的一种容器。字符构成序列(字符串)。有时候在字符序列中进行遍历,标准的string类提供了STL容器接口。具有一些成员函数比如begin()、end(),迭代器可以根据他们进行定位。
注意,与char不同的是,string不一定以NULL(’\0’)结束。string长度可以根据length()得到,string可以根据下标访问。所以,不能将string直接赋值给char。
#include<iostream>
using namespace std;
#include<sstream>
int main()
{
string str = "hello";
const char* temp = str.c_str();
cout<<temp;
system("pause");
return 0;
}
char*转string
printf只能输出C语言内置的数据,而string不是内置的,只是一个扩展的类
#include<iostream>
using namespace std;
#include<sstream>
int main()
{
char *temp = "hello" ;
string str ;
str = temp;
cout<<str;//可以直接输出hello
printf("%s",str.c_str());//需要使用c_str()变成char*
system("pause");
return 0;
}
来源:CSDN
作者:我不是胖虎
链接:https://blog.csdn.net/qq_41695702/article/details/103465896