Если проблема в описании "схвачена" верно, то надо сначала построить в какой-нибудь std::vector список всех файлов, а потом с ним "работать".
Если работа с файлами планируется по-серьезному, можно использовать библиотеку boost::filesystem.
Раз уж язык C++ - используйте std::string.
Данная программа не будет работать, если попадется файл с греческими буквами, например. И, вы удивитесь, но путь к файлам уже может быть больше MAX_PATH.
Ну и наконец, если программа не занимается какой-то чилодробительной обработкой, C++ - неправильный выбор.