如何在C++ 中把字串轉換為Char 陣列 - Delft Stack

文章推薦指數: 80 %
投票人數:10人

本文介紹了在C++ 中把字串轉換為char 陣列的多種方法。

reportthisad C++貼士 在C++中對連結串列進行排序 C++中的Getter和Setter C++中的PragmaOnce C++中的new關鍵字和無匹配的操作符錯誤 C++中的函子 C++繼承建構函式 C++轉義字元 修復C++中未定義的對main的引用錯誤-UndefinedReferencetomain reportthisad 貼士文章 C++貼士 如何在C++中把字串轉換為Char陣列 使用std::basic_string::c_str方法將字串轉換為char陣列 使用std::vector容器將字串轉換為Char陣列 使用指標操作操作將字串轉換為字元陣列 本文介紹了將字串資料轉換為char陣列的多種方法。

使用std::basic_string::c_str方法將字串轉換為char陣列 這個版本是解決上述問題的C++方法。

它使用了string類內建的方法c_str,該方法返回一個指向以null終止的char陣列的指標。

#include #include usingstd::cout; usingstd::cin; usingstd::endl usingstd::string; intmain(){ stringtmp_string="Thiswillbeconvertedtochar*"; autoc_string=tmp_string.c_str(); cout< #include #include usingstd::cout; usingstd::cin; usingstd::endl usingstd::string; intmain(){ stringtmp_string="Thiswillbeconvertedtochar*"; char*c_string_copy=newchar[tmp_string.length()+1]; memmove(c_string_copy,tmp_string.c_str(),tmp_string.length()); /*dooperationsonc_string_copyhere*/ cout< #include #include #include usingstd::cout; usingstd::cin; usingstd::endl; usingstd::string; usingstd::vector; intmain(){ stringtmp_string="Thiswillbeconvertedtochar*\n"; vectorvec_str(tmp_string.begin(),tmp_string.end()); std::copy(vec_str.begin(),vec_str.end(),std::ostream_iterator(cout,"")); returnEXIT_SUCCESS; } 使用指標操作操作將字串轉換為字元陣列 在這個版本中,我們定義了一個名為tmp_ptr的char指標,並將tmp_string中第一個字元的地址分配給它。

#include #include usingstd::cout; usingstd::cin; usingstd::endl usingstd::string; intmain(){ stringtmp_string="Thiswillbeconvertedtochar*\n"; stringmod_string="I'vebeenoverwritten"; char*tmp_ptr=&tmp_string[0]; cout< #include #include usingstd::cout; usingstd::cin; usingstd::endl usingstd::string; intmain(){ stringtmp_string="Thiswillbeconvertedtochar*\n"; stringmod_string="I'vebeenoverwritten"; char*tmp_ptr=&tmp_string[0]; memmove(tmp_ptr,mod_string.c_str(),mod_string.length()); cout<



請為這篇文章評分?