大家。我在尝试编写代码时遇到了困难,希望您能给我一些建议。我正在尝试从文本文件中检索一些参数,然后将它们附加到变量 char 数组中,然后用管道执行该 char 数组,该命令是 bash 命令。
我的问题是如何访问文件以检索参数,我尝试过使用缓冲区和字符串,但转换并没有真正帮助,这是我的代码的基本思想。
如果我将命令直接写入代码,则工作代码:
#include <string.h>
#include <cstdlib>
#include <cstdio>
char *out[10], line[256], command[] = {"mycommand parameter1 parameter2 ..."};
FILE *fpipe;
fpipe = (FILE*)popen(command,"r")
fgets(line, sizeof line, fpipe)
out[0] = strtok (line, "="); // <--- I'm tokenizing the output.
我从文件中读取的方法:
std::ifstream file("/path/to/file", std::ifstream::in);
//std::filebuf * buffer = file.rdbuf();
char * line = new char[];
//buffer->sgetn (line, lenght);
getline(file, line)
注释行是我尝试过的东西,还有其他的,但我没有评论它们。
我正在考虑稍后将它移植到 C,但首先我想让它继续运行。而且我还没有真正实现附加代码,因为我还不能读取文件。希望您能给我一些建议,谢谢!