Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Вопрос.

9.7K
26 апреля 2005 года
Debugerror
8 / / 17.04.2005
В моей лабораторной работе есть такая часть задания:"После поступления 3-х прерываний два файла(которые сравниваются зарание) записать в заново созданый каталог..."Помогите сделать так, что-бы если такой катаог уже создан, то не вызывать системный вызов makedir, а просто скопировать в каталог...Зарание спасибо.
2
27 апреля 2005 года
squirL
5.6K / / 13.08.2003
Цитата:
Originally posted by Debugerror
В моей лабораторной работе есть такая часть задания:"После поступления 3-х прерываний два файла(которые сравниваются зарание) записать в заново созданый каталог..."Помогите сделать так, что-бы если такой катаог уже создан, то не вызывать системный вызов makedir, а просто скопировать в каталог...Зарание спасибо.


1. системного вызова makedir не существует. есть системный вызов mkdir. makedir - вероятно библиотечная функция-обертка для этого системного вызова. хотя я у себя такой не нашел.
2. man mkdir!!!!!!
дам наводку - проверяйте значение, возвращаемое mkdir.

9.7K
27 апреля 2005 года
Debugerror
8 / / 17.04.2005
Цитата:
Originally posted by squirL
1. системного вызова makedir не существует. есть системный вызов mkdir. makedir - вероятно библиотечная функция-обертка для этого системного вызова. хотя я у себя такой не нашел.
2. man mkdir!!!!!!
дам наводку - проверяйте значение, возвращаемое mkdir.


1)Да Я опечатался....
2)Если проверять сообщение, которое возвращает mkdir, то будет помойму немного позновато....Нужно ведь до mkdir проверить есть такая папка или нет...Если не трудно, преведи хоть пример, как можно оценивать то, что возвращает mkdir...

376
27 апреля 2005 года
Absolut
220 / / 22.11.2002
Цитата:
Originally posted by Debugerror
1)Да Я опечатался....
2)Если проверять сообщение, которое возвращает mkdir, то будет помойму немного позновато....Нужно ведь до mkdir проверить есть такая папка или нет...Если не трудно, преведи хоть пример, как можно оценивать то, что возвращает mkdir...


 
Код:
if( mkdir( путь, права_доступа ) == 0 ) {  // каталог успешно создан
}
else { // ошибка создания
    if( errno == EEXIST ) { // каталог или файл с данным именем уже существует
    }
    else { // другие ошибки
    }
}
9.7K
27 апреля 2005 года
Debugerror
8 / / 17.04.2005
Цитата:
Originally posted by Absolut
 
Код:
if( mkdir( путь, права_доступа ) == 0 ) {  // каталог успешно создан
}
else { // ошибка создания
    if( errno == EEXIST ) { // каталог или файл с данным именем уже существует
    }
    else { // другие ошибки
    }
}


А разве system("mkdir") возвращает 0 или 1???

376
28 апреля 2005 года
Absolut
220 / / 22.11.2002
Цитата:
Originally posted by Debugerror
А разве system("mkdir") возвращает 0 или 1???


Это мне напоминает путешествие из Петербурга в Москву через Сибирь. Ну зачем тебе сдался system("mkdir"), если есть mkdir() !?

243
28 апреля 2005 года
pacific_7
1.9K / / 06.09.2004
Цитата:
Originally posted by Debugerror
А разве system("mkdir") возвращает 0 или 1???


Это он наверно от того, что не нашел, где mkdir() подключать :)
В примере приведен системный вызов mkdir(), на основе которого работает команда mkdir. И вот он то и возвращает 1 - в случае ошибки, 0 - в случае успеха. Описан он в <sys/stat.h>
Можно еще использовать вызов opendir(имя_каталога) - находится в <dirent.h>. Возвращает указатель на каталог типа DIR, или NULL в случае неудачи.
ЗЫ system() обычно возвращает 0 в случае успеха выполнения команды и 1 в случае неудачи. Хотя это может зависить от ОС.

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог