c++ - 在 System(""); 中使用 C++ 变量
问题描述
有没有办法在命令中使用变量:system("...");?例如,我尝试了这个,但没有奏效:
int main ()
{
int x=5;
system("echo Number " x " is my favorite number.");
return 0;
}
我也试过这个
system("echo Number " << x << " is my favorite number.");
它也没有奏效。谢谢你。
注意:我刚开始学习 C++,我还是个初学者。
解决方案
如果您使用的是 C++11,那么您可以使用std::to_string
以下工具:
std::string part_a("echo Number "), part_b(" is my favorite number");
system((part_a + std::to_string(x) + part_b).c_str());
这称为重载operator+()
for class basic_string
。
传统的方法是将其打印成 astd::stringstream
并使用底层字符串。
推荐阅读
- bash - Wget 是否可以展平结果目录?
- javascript - 我试图开始和结束 10 周。但它在所有星期都打印相同的值。我找不到问题。谢谢
- php - 未找到“Google_Service_Gmail_Message”类
- splunk - splunk 的日志被截断
- swift - 子视图位于边界层下方 - Swift - 以编程方式
- c++ - 动态分配的二维数组问题
- reactjs - 带有 React 前端的 Spring 方法
- c# - 无效的数据表格式:第 1 列的类型必须为“日期、数字、日期时间”
- javascript - 如何在 platformBrowserDynamic 中使用 appModule?
- node.js - Mongoose:无法填充嵌套的 id 数组