0

文字列がある場合:

std::string Pooptacular = "Pooptacular"

それをchar配列に変換したいのですが、いくつかのオプションがあります。

char* poopCArr = Pooptacular.c_str();

または、memcpyやstrcpyなどで何かを行うことができます。

私が知りたいのは、これらの方法のどれが最速または最も効率的かということです。言い換えれば、1回のプログラム実行でこれを数十万回実行する場合、どの方法を使用する必要がありますか?

4

1 に答える 1

1

データへの読み取り専用ポインタが必要な場合は、を使用しますc_str。何も変換しません。stringすでに割り当てられているバッファへのアクセスを提供するだけです。もちろん、変更する場合は新しいバッファにコピーする必要があります。変更する場合は、変更が元のstringオブジェクトに反映されることを期待しないでください。

于 2012-11-21T07:55:51.457 に答える