我是一名物理学家,通常我只想完成计算,这就是我真正需要的。不过,我一直在使用关于缺乏“int main(int argc,char * argv [])”知识
int main(int argc, char* argv[])
,并一直是其非常讨好的二进制文件在我没想到即初始化变量
~$ ./program.exe a b c (a, b and c are numbers in this case, not letters ok?)
所以,问题是
水平如何变得灵活*如何我用这种方式(或其他)“解析”或“管道”从一个到另一个没有使用文件?*
例如:假设“a.exe”提供了一组“X-Y”点(如在电子表格中),以及我在“b.exe”上插入了哪些点。或者说,我使用bash/awk脚本来格式化“a.exe”的输出格式,将其绘制在gnuplot上。
-----------------------------------------
再次嗨。我正在尝试这样做,但是,我仍然遇到问题。
要看到我在做什么错了,我写了简单的程序
#include <cstdio>
#include <iostream>
#include <cmath>
using namespace std;
int main(int argc, char* argv[]){
for (int i = 0; i <= argc; i++)
cout << "argv[" << i << "]= " << argv[i] << endl;
getchar();
return 0;
}
;并与内容的文件(可以说是“TEST.DAT”)
1
2
3
4
5
6
自我不想在我的程序上阅读文件的内容,我只是想“扔掉”它,所以我试过
more test.dat | ./program.exe
甚至
./program.exe << EOF
1 2 3 4 5
EOF
,但它不工作,我认为它应该。
再次感谢。
这个问题应该在stackoverflow上。 – greatwolf
您可以使用xargs命令将文件内容更改为命令行参数。 'cat test.dat | xargs preogram.exe' –