私はこれを変換する文字列ですstring="Apple"
、それをこのスタイルのc-stringに入れたい、char *c
、それは{a,p,p,l,e,'\0'}
。どの事前定義メソッドを使用する必要がありますか?どうぞよろしくお願いします。
.c_str()
はconst char*
を返します。可変バージョンが必要な場合は、自分でコピーを作成する必要があります。
vector<char> toVector( const std::string& s ) {
string s = "Apple";
vector<char> v(s.size()+1);
memcpy( &v.front(), s.c_str(), s.size() + 1 );
return v;
}
vector<char> v = toVector(std::string("Apple"));
// what you were looking for (mutable)
char* c = v.data();
.c_str()は不変に機能します。ベクトルはメモリを管理します。