最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++輕松實(shí)現(xiàn)字符串與字符數(shù)組的相互轉(zhuǎn)換

 更新時(shí)間:2025年03月19日 10:13:59   作者:Lion 萊恩呀  
本文詳細(xì)介紹了如何在C++中通過(guò)c_str()和strcpy()函數(shù)將字符串轉(zhuǎn)換為字符數(shù)組,以及使用for循環(huán)、+運(yùn)算符、重載=和內(nèi)置構(gòu)造函數(shù)將字符數(shù)組轉(zhuǎn)換為字符串的方法,需要的朋友可以參考下

引言

本文重點(diǎn)介紹在 C++ 中將字符串轉(zhuǎn)換為 char 數(shù)組和將 char 數(shù)組轉(zhuǎn)換為字符串的不同方法。

一、將字符串轉(zhuǎn)換為 char 數(shù)組

C++ 提供了以下將字符串轉(zhuǎn)換為 char 數(shù)組的技術(shù):

  • 使用 c_str()和 strcpy() 函數(shù)。
  • 使用 for 循環(huán)。

1.1、C++ 中的 c_str()和 strcpy()函數(shù)

C++ 函數(shù)c_str()以及 C++ 字符串函數(shù)strcpy()可用于輕松地將字符串轉(zhuǎn)換為字符數(shù)組。

c_str()方法表示字符串?dāng)?shù)組中的字符序列,后跟一個(gè)空字符 '\0'。它返回指向字符串的 null 指針。

語(yǔ)法:

string-name.c_str();
  • 首先使用 c_str() 方法來(lái)獲取字符串的所有字符以及終止 null 字符。
  • 此外,聲明一個(gè) char 類型的空數(shù)組來(lái)存儲(chǔ)結(jié)果,即將字符串轉(zhuǎn)換為 char 數(shù)組的結(jié)果。
  • 最后,使用 strcpy() 方法將c_str()方法生成的字符序列復(fù)制到空 char 數(shù)組中。

示例:

#include <bits/stdc++.h> 
using namespace std; 

int main() 
{ 
	 
	string str = "";
	cout<<"Enter the string:\n";
	
	cin>>str;

	char arr[str.length() + 1]; 

	strcpy(arr, str.c_str()); 
    cout<<"String to char array conversion:\n";
	for (int i = 0; i < str.length(); i++) 
		cout << arr[i]; 

	return 0; 
}

1.2、使用 for 循環(huán)中的字符串到字符數(shù)組的轉(zhuǎn)換

為了將 char 數(shù)組轉(zhuǎn)換為字符串,可以使用 C++ for 循環(huán)。

  • 首先創(chuàng)建一個(gè) char 類型的空數(shù)組。
  • 然后遍歷輸入字符串。
  • 在迭代時(shí)將字符存儲(chǔ)到 char 數(shù)組中。

示例:

#include <bits/stdc++.h> 
using namespace std; 

int main() 
{ 
	 
	string str = "";
	cout<<"Enter the string:\n";
	
	cin>>str;

	char arr[str.length() + 1]; 
    cout<<"String to char array conversion:\n";
    for (int x = 0; x < sizeof(arr); x++) { 
        arr[x] = str[x]; 
        cout << arr[x]; 
    } 

	return 0; 
}

二、將 char 數(shù)組轉(zhuǎn)換為字符串

用于在 C++ 中將 char 數(shù)組轉(zhuǎn)換為字符串的技術(shù):

  • “+”運(yùn)算符。
  • C++ 重載“=”運(yùn)算符。
  • C++ 內(nèi)置構(gòu)造函數(shù)。

2.1、C++ 運(yùn)算符 ‘+’

C++提供了將數(shù)據(jù)項(xiàng)連接或添加到變量的功能:'+' operator。

  • 創(chuàng)建一個(gè)新的空字符串來(lái)存儲(chǔ)結(jié)果。
  • 接下來(lái),使用 for 循環(huán)遍歷輸入 char 數(shù)組。
  • 在遍歷數(shù)組的過(guò)程中,使用 ‘+’ 運(yùn)算符將字符連接到字符串。

示例:

#include <bits/stdc++.h> 
using namespace std; 


int main() 
{ 
	char arr[] = { 'L', 'I', 'O', 'N', 'L', 'O', 'N', 'G'}; 
	
	int size_arr = sizeof(arr) / sizeof(char); 
	string str = ""; 
	for (int x = 0; x < size_arr; x++) { 
		str = str + arr[x]; 
	} 
	cout<<"Converted char array to string:\n";
	cout << str << endl; 
	return 0; 
}

輸出:

Converted char array to string:
LIONLONG

2.2、C++ 重載 ‘=’ 運(yùn)算符

C++具有重載的概念,它使操作員執(zhí)行基本或默認(rèn)操作以外的其他操作。

  • 創(chuàng)建一個(gè)新的空字符串。
  • 使用 '=' operator overload 將數(shù)據(jù)項(xiàng)逐個(gè)字符存儲(chǔ)到新創(chuàng)建的空字符串中。

示例:

#include <bits/stdc++.h> 
using namespace std; 


int main() 
{ 
	char arr[] = { 'L', 'I', 'O', 'N', 'L', 'O', 'N', 'G'}; 
	
	int size_arr = sizeof(arr) / sizeof(char); 
	string str = ""; 
	str = arr;
	cout<<"Converted char array to string:\n";
	cout << str << endl; 
	return 0; 
}

輸出:

Converted char array to string:
LIONLONG

2.3、C++ 字符串內(nèi)置構(gòu)造函數(shù)

在將 char 數(shù)組轉(zhuǎn)換為字符串的上下文中,可以使用 C++ 字符串構(gòu)造函數(shù)。

語(yǔ)法:

string string-name(char array-name);

此構(gòu)造函數(shù)采用以 null 字符結(jié)尾的字符序列作為輸入?yún)?shù)。

注意:這只能在整個(gè)程序中聲明字符串時(shí)使用。

示例:

#include <bits/stdc++.h> 
using namespace std; 

int main() 
{ 
	char arr[] = { 'L', 'I', 'O', 'N', 'L', 'O', 'N', 'G'}; 
	int size_arr = sizeof(arr) / sizeof(char); 
	string str(arr);
	cout<<"Converted char array to string:\n";
	cout <<str<< endl; 
	return 0; 
}

輸出:

Converted char array to string:
LIONLONG

三、總結(jié)

在本文中了解了在 C++ 中將字符串轉(zhuǎn)換為 char 數(shù)組的各種技術(shù),反之亦然。

到此這篇關(guān)于C++輕松實(shí)現(xiàn)字符串與字符數(shù)組的相互轉(zhuǎn)換的文章就介紹到這了,更多相關(guān)C++字符串與字符數(shù)組互轉(zhuǎn)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 增加Vscode引用路徑的解決方法(2種)

    增加Vscode引用路徑的解決方法(2種)

    在嵌入式開發(fā)中需要經(jīng)常用到庫(kù)函數(shù), Vscode需要配置引用路徑,本文主要介紹了增加Vscode引用路徑的解決方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-02-02
  • C語(yǔ)言模式實(shí)現(xiàn)C++繼承和多態(tài)的實(shí)例代碼

    C語(yǔ)言模式實(shí)現(xiàn)C++繼承和多態(tài)的實(shí)例代碼

    本篇文章主要介紹了C語(yǔ)言模式實(shí)現(xiàn)C++繼承和多態(tài)的實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • C++ class傳值和傳引用的詳細(xì)介紹

    C++ class傳值和傳引用的詳細(xì)介紹

    在 C++ 中,class(類對(duì)象)的傳值和傳引用是兩種截然不同的參數(shù)傳遞方式,它們?cè)谛阅?、?nèi)存管理和行為上有著本質(zhì)的區(qū)別,本文詳細(xì)對(duì)比了C++中對(duì)象傳值和傳引用兩種參數(shù)傳遞方式的差異,感興趣的朋友跟隨小編一起看看吧
    2026-04-04
  • C語(yǔ)言+win32api寫窗體應(yīng)用程序

    C語(yǔ)言+win32api寫窗體應(yīng)用程序

    本文給大家分享的是個(gè)人使用純C語(yǔ)言結(jié)合win32api制作窗體應(yīng)用程序的代碼,非常的簡(jiǎn)單,給需要的小伙伴參考下。
    2016-02-02
  • C語(yǔ)言實(shí)現(xiàn)電子英漢詞典系統(tǒng)

    C語(yǔ)言實(shí)現(xiàn)電子英漢詞典系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)電子英漢詞典系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • C++中pair使用的示例代碼

    C++中pair使用的示例代碼

    本文主要介紹了C++中pair使用的示例代碼,用于存儲(chǔ)兩個(gè)不同類型的元素,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-02-02
  • 使用C++實(shí)現(xiàn)一個(gè)高效的線程池

    使用C++實(shí)現(xiàn)一個(gè)高效的線程池

    在多線程編程中,線程池是一種常見(jiàn)且高效的設(shè)計(jì)模式,本文將詳細(xì)介紹如何使用C++實(shí)現(xiàn)一個(gè)線程池,并解析相關(guān)代碼實(shí)現(xiàn)細(xì)節(jié),需要的小伙伴可以參考下
    2024-12-12
  • C++ 中 socket編程實(shí)例詳解

    C++ 中 socket編程實(shí)例詳解

    這篇文章主要介紹了C++ 中 socket編程實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • C++11中char16_t和char32_t的具體使用

    C++11中char16_t和char32_t的具體使用

    C++11引入char16_t和char32_t,為Unicode編碼提供固定長(zhǎng)度支持,下面就來(lái)介紹一下char16_t和char32_t的使用,可以解決wchar_t跨平臺(tái)不一致問(wèn)題,提升可移植性,感興趣的可以了解一下
    2025-06-06
  • C語(yǔ)言實(shí)現(xiàn)掃雷游戲簡(jiǎn)易版

    C語(yǔ)言實(shí)現(xiàn)掃雷游戲簡(jiǎn)易版

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)掃雷游戲簡(jiǎn)易版,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-11-11

最新評(píng)論

安宁市| 汨罗市| 逊克县| 泸溪县| 金坛市| 卢湾区| 海城市| 同心县| 乐山市| 新丰县| 合水县| 马鞍山市| 许昌市| 湟中县| 泰和县| 岳普湖县| 开封市| 随州市| 礼泉县| 集安市| 南宁市| 探索| 三河市| 屯留县| 沁水县| 墨江| 牙克石市| 临汾市| 陇南市| 湖北省| 长沙县| 翼城县| 六盘水市| 山阳县| 乐业县| 东山县| 绍兴市| 垦利县| 志丹县| 镇雄县| 广昌县|