我正在尝试将“ char **”传递给另一个函数(我要使用的函数需要该形式作为参数),但是我拥有的是双精度数组。
我一直在努力寻找某种方法来将双精度数转换为C字符串并收集或连接它们,但是...我正在四处寻找,除了编译器错误外,什么也没得到。
我会发布代码,但是这都不是垃圾。

有人碰巧知道如何采用7个双精度值并与它们一起获得char **吗?

最佳答案

如果您使用的是C,一种选择是分配char缓冲区并调用snprintf()以从双精度生成字符串值,就像您将字符串打印到控制台(例如,紧跟着"%f"这样的格式字符串)按值)。

如果可以使用C ++,则std::ostringstream类具有相似的效果(<sstream>标头);您可以在其中输入<<数值,调用str()创建std::string,最后在c_str()对象上调用string以获得char*。可以将这些指针放入临时C数组中以生成char**

10-06 05:25
查看更多