C#中数据类型char*,const char*和string的三者转换

时间:2023-03-08 22:00:42

C#中数据类型char*,const char*和string的三者转换:

. const char* 和string 转换

() const char*转换为 string,直接赋值即可。

EX: const char* tmp = "tsinghua".

    string s = tmp;

() string转换为const char*,利用c_str()

EX:  string s = "tsinghua";

     const char*tmp = s.c_str();

. char*和const char*之间的转换

() const char*转化为char*,利用const_cast<char*>

EX: const char* tmp = "tsinghua";

    char* p = const_cast<char*>(tmp);

() char*转化为const char*,直接赋值即可。

    char* p = "tsinghua".

    const char* tmp = p;

. char*和string之间的转换

有了1和2的基础,char*和string转化就很简单了。

()char*转化为string,直接赋值即可。

EX: char* p = "tsinghua".

    string str = p;

()string转化为char*,走两步,先是string->const char*,然后是const char*->char* EX: string str = "tsinghua"; char* p = const_cast<char*>(str.c_str()):