我们在写程序时,常常会遇到类型转换的问题。现总结一些常见的类型转换。
1,const char*(C风格字符串)与string之间转换:
(1) const char*可以直接对string类型赋值,例如:
const char* pchar = "qwerasdf";
stringstr = pchar;
(2) string通过c_str()函数转换为C风格字符串,例如:
string str = "qwerasdf";
const char* pchar = str.c_str();
2,const char*类型可以直接给CString类型赋值,例如:
const char* pchar = "qwerasdf";
CString str = pchar;
3,string类型变量转为为Cstring类型变量
CString类型变量可以直接给string类型变量赋值,但是string类型不能对CString类型直接赋值。通过前两类
转换我们可以得到,string类型变量转换为const char*类型,然后再直接赋值就可以了。例如:
CString cstr;
sring str = “asdasd”;
cstr = str.c_str();
同理,CStrng类型变量先转换为string类型在调用c_str()函数就可以完成向const char*类型的转换。例如:
CString cStr = "adsad";
string str = cStr;
const char* pchar = str.c_str();
4,double,int转string
double temp;
stringstream strStream;
strStream<<temp;
string ss = strStream.str()
string 转double,int
string.atoi , string.atof
从上面我们可以上面看出,通过类型之间的相互转化,会使本来要通过复杂的函数来完成的类型转换变得简单易懂。