下面是我写的一个程序,当我输入我希望它执行的linux命令时运行正常
include iostream
include string
using namespace std;
int main()
{
cout << "The directory!";
system("cd CS_204");
return 0;
}
然而,下面我尝试制作它,以便用户可以输入他们想要的命令,我得到他们无法将std::string
转换为const char*
这是我第一次使用该功能而我是拼命想要了解它。帮助!
int main()
{
cout << "The directory!";
string word;
cin >> word
if(word != "A")
system(word);
return 0;
}
答案 0 :(得分:3)
在第二种情况下,word
的类型为 std :: string ,并不等同于 const char * 。您需要使用成员函数std::string::c_str()
system(word.c_str()); // This will convert to a c style string.