1. 程式人生 > >char*,const char*和string 三者轉換

char*,const char*和string 三者轉換

1. const char* 和string 轉換

(1) const char*轉換為 string,直接賦值即可。

     EX: const char* tmp = "tsinghua".

            string s = tmp;

(2) string轉換為const char*,利用c_str()

    EX:  string s = "tsinghua";

           const char*tmp = s.c_str();

2. char*和const char*之間的轉換

(1) const char*轉化為char*,利用const_cast<char*>

     EX: const char* tmp = "tsinghua";

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

(2) char*轉化為const char*,直接賦值即可。

     char* p = "tsinghua".

     const char* tmp = p;

3. char*和string之間的轉換

  有了1和2的基礎,char*和string轉化就很簡單了。

(1)char*轉化為string,直接賦值即可。

     EX: char* p = "tsinghua".

            string str = p;

(2)string轉化為char*,走兩步,先是string->const char*,然後是const char*->char*

     EX:  string str = "tsinghua";

             char* p = const_cast<char*>(str.c_str()):