我无法让 system() 在字符串变量中运行命令。
ostringstream convert;
convert << getSeconds(hours);
string seconds = convert.str(); /* converts the output of 'getSeconds()' into
a string and puts it into 'seconds' */
string cmd = "shutdown /s /t " + seconds;
system(cmd);
getSeconds()
只需以小时为单位获取一个 int,将其转换为秒并以秒为单位返回一个 int。一切运行良好,没有错误,直到达到system(cmd);
. 然后编译器会吐出这个错误:
error: cannot convert 'std::string {aka std::basic_string<char>}' to
'const char*' for argument '1' to 'int system(const char*)'
这是我的包括:
#include <iostream>
#include <string>
#include <cstdlib>
#include <sstream>