如何将double
数据类型插入char*
数组中?我尝试过使用std::to_string()
和c_str()
,但是似乎都没有用。
本质上,我试图使用execvp()
调用C ++程序,从阅读手册页开始,我认为它需要使用char*
数组。我试图调用该程序,然后将双精度a
,b
和c
传递为程序argv
的{{1}}参数。 / p>
E.G。当execvp()
,a = 0.1
,b = 0.1
,c = 0.1
应该看起来像终端呼叫:execvp(args[0], args)
./RL 0.1 0.1 0.1
解决了:
#include <iostream>
#include <unistd.h>
#include <stdlib.h>
#include <string>
int main()
{
char *args[5];
args[0] = "RL";
std::string temp;
double a = 0.1;
double b = 0.1;
double c = 0.1;
//I want to put the 3 doubles above into the char* args array
args[1] = a;
args[2] = b;
args[3] = c;
execvp(args[0], args);
return 0;
}