string是C++標準庫類型,用於表示可變長的字符序列。
1 字符數組轉化爲string
1.1直接複製或者賦值
通過直接複製或者賦值的方式,可以將字符數組轉換爲string。
char ach1[] = "Hello";
string str1(ach1);
string str2 = ach1;
-
-
1.2通過加法運算符或者複合賦值運算符
-
char ach2[] = "World";
str2 += ach2;
string str3 = str1 + " " + ach2;
需要注意的是,在使用加法運算符時,運算符兩側的操作數不能都是字符數組。
string str4 = ach1 + ach2;//錯誤
2 string轉化爲字符數組
通過string類的c_str()函數,可以將string轉化爲字符數組。c_str()函數返回值是一個C風格字符串,也就是說,該函數的返回結果是一個指向字符數組的指針。
char ach3[20];
strcpy(ach3, str1);//錯誤
strcpy(ach3, str1.c_str());//正確
其中,strcpy()函數的作用是將指定的字符串進行拷貝,該函數無法拷貝string對象,只能拷貝string對象的c_str()函數返回的字符串。