void _splitpath(char *fpath, char *drive, char *directory, char *fname, char *extension)
Прототип:
Описание:
Эта функция не определена стандартом ANSI С.
Функция splitpath() расщепляет полный путь, заданный в строке, на которую указывает параметр fpath. Символ диска помещается в строку, на которую указывает параметр drive. Каталог и любые подкаталоги помещаются в строку, на которую указывает параметр directory. Имя файла помещается в строку fname, а расширение — в строку extension. Минимальные размеры массивов, на которые указывают эти параметры, представлены ниже.
Параметр | Размер для DOS | Размер для Windows | Имя макроса |
---|---|---|---|
drive | 3 | 3 | _MAX_DRIVE |
directory | 66 | 256 | _MAX_DIR |
fname | 9 | 256 | _MAX_FILE |
extension | 5 | 256 | _MAX_EXT |
Пример:
Следующая программа выводит элементы полного пути C:\MYDIR\MYFILE.DAT:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char fname[9];
char dir[64];
char drive[3];
char ext[5];
_splitpath("C:\\MYDIR\\MYFILE.DAT", drive, dir, fname, ext);
printf("%s %s %s %s\n", drive, dir, fname, ext);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char fname[9];
char dir[64];
char drive[3];
char ext[5];
_splitpath("C:\\MYDIR\\MYFILE.DAT", drive, dir, fname, ext);
printf("%s %s %s %s\n", drive, dir, fname, ext);
return 0;
}