c 字符串数组_在C++中将字符串转换为char数组
生活随笔
收集整理的這篇文章主要介紹了
c 字符串数组_在C++中将字符串转换为char数组
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我們許多人遇到了錯誤‘cannot convert std::string to char[] or char* data type’。
例如:
Input : string s = "geeksforgeeks" ;Output : char s[] = { 'g', 'e', 'e', 'k', 's', 'f', 'o', 'r', 'g', 'e', 'e', 'k', 's' } ;Input : string s = "coding" ;Output : char s[] = { 'c', 'o', 'd', 'i', 'n', 'g' } ;一種方法是將字符串的內容復制到char數組。這可以借助c_str()和strcpy()函數來完成。
c_str()函數用于返回指向數組的指針,該數組包含以空終止的字符序列,該字符串表示字符串的當前值。
語法:
const char* c_str() const;如果拋出異常,則字符串中沒有任何變化。但是,當我們需要查找或訪問各個元素時,可以使用strcpy()函數將其復制到char數組中。復制后,我們可以像使用簡單數組一樣使用它。
采用的char數組的長度不應小于輸入字符串的長度。
// CPP program to convert string // to char array #include using namespace std; // driver code int main() { // assigning value to string s string s = "geeksforgeeks"; int n = s.length(); // declaring character array char char_array[n + 1]; // copying the contents of the // string to char array strcpy(char_array, s.c_str()); for (int i = 0; i < n; i++) cout << char_array[i]; return 0; }輸出:
geeksforgeeks另一種方法:
// CPP program to convert string // to char array #include #include using namespace std; // driver code int main() { // assigning value to string s string s("geeksforgeeks"); // declaring character array : p char p[s.length()]; int i; for (i = 0; i < sizeof(p); i++) { p[i] = s[i]; cout << p[i]; } return 0; }輸出:
geeksforgeeks總結
以上是生活随笔為你收集整理的c 字符串数组_在C++中将字符串转换为char数组的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JAVA进阶开发之(二维数组)
- 下一篇: Linux的实际操作:搜索查找类的实用指