c++ で文字列ベクトルを char 配列に変換しようとしています。
より具体的には、これを使用して「ls –latr」のようなシェル コマンドを分割することです。
istringstream f(x);
while (getline(f, x, ' '))
{
strings.push_back(x);
}
strings[0] == "ls"
私はそれが私に与えると信じていますstrings[1]==" -latr"
。
私は次のことをしようとしています:
execvp(strings[0], strings);
ただし、次のエラーが発生します。
エラー: 引数 '1' の 'std::basic_string, std::allocator >' を 'const char*' に変換できません 'int execvp(const char*, char* const*)' </p>
したがって、文字列をchar配列に変換する方法を見つけようとしています。