【C++知識】string和char的那些事

string和char的那些事

轉換成char[ ]都需要使用strcpy/strncpy

#include<iostream>
#include<cstring>
#include<algorithm>

using namespace std;

int main(){
    //char[]——>char*
    char str[]="123456";
    char *p=str;
    cout<<p<<endl;
    //char*——>char[]
    char *p1="yyqx";
    char str1[2];
    strncpy(str1,p1,strlen(p1)+1);
    cout<<str1<<endl;
    //const char*——>char* 需另外開闢空間
    const char* p2="abcd";
    char* p3=new char[strlen(p2)+1]; //先要開闢空間
    strncpy(p3,p2,strlen(p2)+1); //再進行賦值
    cout<<p3<<endl;
    //char*——>const char* 可以直接賦值
    char* p4="defg";
    const char* p5=p4;
    cout<<p5<<endl;
    //string——>char*
    string s1="yyqx";
    char* p6=const_cast<char*>(s1.c_str());
    cout<<p6<<endl;
    //string——>const char*
    string s2="uiiyyqx";
    const char* p7=s2.c_str();
    cout<<p7<<endl;
    //char*——>string
    char* p8="hjjkk";
    string s3=p8;
    cout<<s3<<endl;
    //string——>char[]
    string s4="dkjgsl";
    char str2[4];
    strncpy(str2,s4.c_str(),s4.length()+1);
    cout<<str2<<endl;
    return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章