тестировщик, который не знает имен файлов

#c #shell

#c #оболочка

Вопрос:

Есть несколько тестовых примеров для программы в формате: ??.in ans ??.out в каталогах ./input и ./output так, что для каждого теста первая часть имен равна, например test1.in , test1.out

Как я могу написать код, который просматривает эти файлы вместе? (возможно, файлы можно искать в алфавитном порядке [в каждом каталоге] …)

Ответ №1:

Получите список всех файлов в каталоге, используя opendir (и связанные с ним функции), а затем проанализируйте массив.

Ответ №2:

 for (int i = 0; i < 100; i  ) {
    char in_filename[100];
    char out_filename[100];

    sprintf(in_filename, "./input/test%d.in", i);
    sprintf(out_filename, "./output/test%d.out", i);
    /* use in_filename and out_filename as you see fit */
    /* ... */
}
  

Комментарии:

1. имя теста может быть test3a.in

2. использовать "%x" для шестнадцатеричного вывода 🙂

3. что делать для : test1.in , test2.in , test3a.in , … как они могут выполняться в оболочке?