Описание функций Си

       

Fnmerge



     fnmerge

Функция Создает новое имя файла из отдельных частей.

Синтаксис #include

void fnmerge(char * path, const char * drive, const char * dir, const char * name, const char * ext);

Файл, содержащий dir.h прототип

Описание Функция fnmerge создает имя файла из его компонен- тов. Новое имя файла, то есть его полный маршрут доступа, строится следующим образом:

X:\DIR\SUBDIR\NAME.EXT , где

X - спецификация устройства;

\DIR\SUBDIR\ - директория;

NAME - имя;

.EXT - расширение

fnmerge предполагает, что для запоминания постро- енного имени маршрута доступа достаточно места. Максимальная длина маршрута доступа определяется константой MAXPATH, определенной в dir.h.

Две вышеописанные функции взаимообратны. Если вы с помощью функции fnsplit разделите на части мар- шрут доступа path, а затем сольете полученные компоненты с помощью функции fnmerge, то вы снова получите маршрут доступа path.

Возвращаемое Нет. значение

Переносимость Функция работает только в системе DOS.

Смотрите также

Пример:

#include

#include

#include

int main(void) { char drive[MAXDRIVE]; char dir[MAXDIR]; char file[MAXFILE]; char ext[MAXEXT]; char s[MAXPATH]; int flag; for (;;) { printf("> "); if (!gets(s)) break; flag = fnsplit(s,drive,dir,file,ext); printf(" drive: %s, dir: %s, file: %s, ext: %s, ", drive, dir, file, ext); printf("flags: "); if (flag & DRIVE) printf(":"); if (flag & DIRECTORY) printf("d"); if (flag & FILENAME) printf("f"); if (flag & EXTENSION) printf("e"); printf("\n"); fnmerge(t,drive,dir,file,ext); if (strcmp(t,s) != 0) /* shouldn't happen! */ printf(" --> strings are different!"); } }

Вывод: > C:\TURBOC\FN.C drive: C:, dir: \TURBOC\, file: FN, ext: .C,flags: :dfe > FILE:C drive: , dir: , file: FILE, ext: .C, flags: fe > \TURBOC\SUBDIR\NOEXT. drive: , dir: \TURBOC\SUBDIR\, file: NOEXT, ext: ., flags: dfe > C:MYFILE drive: C:, dir: , file: MYFILE, ext: , flags: :f > z



Содержание раздела