Выделить из строки с полным путем к файлу только имя файла - C (СИ)
Формулировка задачи:
Дана строка, содержащая полное имя файла, то есть имя диска, список каталогов (путь),
собственно имя и расширение. Выделить из этой строки имя файла.
Нужна помощь.Можно без объяснения. язык C
Решение задачи: «Выделить из строки с полным путем к файлу только имя файла»
textual
Листинг программы
#include <string.h>
char * NameFile(char *path)
{
char *s = strrchr(path, '\\');
if (s!=NULL) s++;
return s;
}
Объяснение кода листинга программы
- Входной параметр функции — это строка с полным путем к файлу, которую мы получаем в качестве аргумента типа char*.
- Мы используем функцию strrchr, чтобы найти последний символ обратной косой черты (\) в строке. Функция возвращает указатель на этот символ или NULL, если символ не найден.
- Если функция strrchr вернула не NULL, то мы инкрементируем указатель, чтобы пропустить обратную косую черту в пути к файлу.
- Возвращаем указатель на подстроку, начиная с первого символа после последнего символа обратной косой черты в пути к файлу.
- Если функция strrchr вернула NULL, то возвращаем NULL, так как не удалось найти последний символ обратной косой черты в строке.