C++处理char*,char[],string三种类型间的转换
2018-01-30 21:59
323 查看
前言
在C和C++中,有一个相当重要的部分,就是字符串的编程描述。在学C的时候,很多人习惯了char[],char*表示法,直到遇见了C++后,出现了第三者:string。这时候,很多初学者就会在这三种字符串表现形式的转换上出现错误,以下是笔者总结的一些最常用的字符串转换方法供大家参考。代码
#include <iostream> #include <cstdio> #include <cstdlib> #include <cstring> #include <string.h> using namespace std; int main(void) { string str = "HelloWorld"; char str4[15] = "\0"; char str5[15] = "\0"; char str6[15] = "\0"; char* str1 = (char*)str.data(); //string => char* char* str2 = (char*)str.c_str();//string => char* string str3 = str1; //char* => string strcpy(str4,str1); //char* => char[] memcpy(str5,str1,strlen(str1)); //char* => char[] for(int i=0; i<str.length(); i++) //string => char[] { str6[i] = str[i]; } string str7 = str4; //char[] => string char* str8 = str4; //char[] => char* cout<<str1<<endl; cout<<str2<<endl; cout<<str3<<endl; cout<<str4<<endl; cout<<str5<<endl; cout<<str6<<endl; cout<<str7<<endl; cout<<str8<<endl; return 0; }
相关文章推荐
- java中int,char,string三种类型的相互转换
- java中int,char,string三种类型的相互转换
- java中int,char,string三种类型的相互转换
- java中int,char,string三种类型的相互转换
- [转] java中int,char,string三种类型的相互转换
- java中int,char,string三种类型的相互转换
- java中int,char,string三种类型的相互转换
- java int,string,char三种类型变量之间的互相转换
- string 转换char类型
- java Data、String、Long三种日期类型之间的相互转换
- char*数组(c类型字符串)和c++中的string的转换、字符串比较、char*数组等问题
- cocos2d-x类型转换(CCstring int string char UTF-8互转)
- String数据类型转换成long、int、double、float、boolean、char等七种数据类型
- CString 和 string, char * , char[], 以及其他类型之间的互相转换小结
- char *、CString和string之间的类型转换与比较
- C++ char * 和char[]的区别以及怎样与string类型进行转换
- cocos2d-x类型转换(CCstring int string char UTF-8互转)
- 数据类型转换(char * ,char [] ,string ,int char)
- VC中int,char,char*,const char*,string等类型转换
- java中数据类型转换 (int string char等)