我正在尝试使用命令行参数和解析C中的文本文件。基本上我希望能够输入两个数字,如1和4,并让它读取文本文件的列然后将其打印到stdout。 我希望能够做到这样的事情:
PID TTY TIME CMD 449 ttys000 0:00.35 -bash 1129 ttys001 0:00.35 -bash 25605 ttys001 0:00.15 vi prog.c 6132 ttys002 0:00.11 -bash 6208 ttys002 0:00.03 vi test
并做:
./your_prog 1 4 < data.txt PID CMD 449 bash 1129 -bash 25605 vi 6132 -bash 6208 vi
所以我需要输入我要打印的列,将文件重定向到“data.txt”并让它处理文件并打印出来。
到目前为止,我的代码是:
#include int main(int argc, char **argv){ //int row = argc[0]; //int col = argc[1]; //if number entered is less than one, re-enter int i; for (i = 0; i < argc; i++) { printf("argv[%d] = %sn", i, argv[i]); } if(argc < 1){ fprintf(stderr, "Enter a valid input"); //quit return 1; } else{ char ch[256]; //ch[255] = '