Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/124.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将文件内容作为参数传递到C++;程序 使用C++,需要将文件的内容作为参数传递给程序,阿纳尔。_C++ - Fatal编程技术网

将文件内容作为参数传递到C++;程序 使用C++,需要将文件的内容作为参数传递给程序,阿纳尔。

将文件内容作为参数传递到C++;程序 使用C++,需要将文件的内容作为参数传递给程序,阿纳尔。,c++,C++,如果要以这种方式传递参数,请使用xargs: cat file | xargs./maincat file |/main将通过管道将文件内容传输到/main的输入,而不是参数 如果要以这种方式传递参数,请使用xargs: cat file | xargs./main虽然@lilistence有一个很好的解决方案,但以下方法也很有效(我提到它是为了完整性,因为我觉得它更具可读性): 这将获取名为file的文件的内容(因为它解释$(和))中的命令),并将它们作为参数传递给/main,而@lilist

如果要以这种方式传递参数,请使用
xargs


cat file | xargs./main

cat file |/main
将通过管道将文件内容传输到
/main
输入,而不是参数

如果要以这种方式传递参数,请使用
xargs


cat file | xargs./main

虽然@lilistence有一个很好的解决方案,但以下方法也很有效(我提到它是为了完整性,因为我觉得它更具可读性):


这将获取名为
file
的文件的内容(因为它解释
$(
)中的命令),并将它们作为参数传递给
/main

,而@lilisten有一个很好的解决方案,下面的方法也很有效(我提到它是为了完整,因为我觉得它更可读):


这将获取名为
file
的文件的内容(因为它解释
$(
)中的命令),并将其作为参数传递给
/main

没有名为C/C++的语言,管道将其发送到
stdin
(即,您需要使用
cin
来检索它),我想您需要
xargs
没有一个叫做C/C++的语言,管道将它发送到
stdin
(即,您需要使用
cin
检索它),我想您需要
xargs
#include <fstream>
#include <iostream>

int main(int argc, char **argv)
{
  std::cout << "Have " << argc << " arguments:" << std::endl;
  for (int i = 0; i < argc; ++i) {
    std::cout << argv[i] << std::endl;
  }
  std::istream* input = &std::cin; 
  if(argc > 1) {
    std::cout << input;
    std::cout << "more than argument found\n";
  }

  std::string inputs;
  std::cout<< "1:\n";
  std::cout<< argv[0];
  std::cout<< "\n2:\n";
  std::cout<< argv[1];
  std::cout<< "\n3:\n";
  std::cout<< input;

  std::cout<< "\nEnd\n";

  return 0;
}
int main() {
  // read input
  for (std::string line; std::getline(std::cin, line);) {
    std::cout << line << std::endl;
  }

  return 0;
}
./main $(cat file)