gpt4 book ai didi

c++ - 无法将 std::stringstream 转换为 const char*

转载 作者:搜寻专家 更新时间:2023-10-31 00:59:55 32 4
gpt4 key购买 nike

我尝试在 system() 函数的帮助下运行命令,转发参数如下代码所示:

std::stringstream volume_control;
int volume_value = 5;
volume_control << "/usr/bin/amixer cset numid=1 " << volume_value << std::endl;
system(volume_control.str());

它不起作用,因为 std::stringstream 到 const char* 的转换不成功。

我知道在 std::string 的情况下我有方法 std::c_string() 并且如果我是正确的它返回我需要的 const char* 类型,但在 stringstream 的这种情况下该方法不存在。那怎么办呢?

最佳答案

volume_control.str()返回一个 std::string 类型。您需要调用std::string::c_str()std::string::data()方法。

谷歌搜索很容易给你答案。

system(volume_control.str().c_str());

关于c++ - 无法将 std::stringstream<char> 转换为 const char*,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32375112/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com