Я пишу программу на 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] из вектора-аргумента. Как я могу прочитать не только первую цифру, но и все целое число внутри строки этого аргумента?