【发布时间】:2021-02-10 05:39:30
【问题描述】:
我正在编写一个 C 程序,它从 .txt 文件中读取表数据,对其应用更改并将修改后的表打印到不同的 .txt 文件中。该程序的一部分是在 irow 参数之后在终端中输入的行之前打印并清空行的函数。以下是程序的编译和运行方式:
gcc -Wall -Wextra -Werror -o main main.c
./main irow [row] <tab1.txt >tab2.txt
处理输入的部分程序:
int insertRow(char*argv[], int row_number) {
row_number = 0;
for(int i = 0; argv[i]; i++) {
if ( isdigit(argv[i][0]) && (strcmp(argv[i - 1], "irow") == 0))
if((argv[i][0] - '0') > 0)
row_number = argv[i][0] - '0';
}
return row_number;
}
然后row_number在main方法中用于对表进行修改。
代码工作并执行它应该做的事情,但是我还没有想出更好的方法来从参数向量中读取 [row] 参数。如何不仅读取第一个数字,还读取该参数字符串中的整个整数?
【问题讨论】: