Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Модернізація заданого алгоритму програми для виведення інформації про статус каталогу

Реферат Модернізація заданого алгоритму програми для виведення інформації про статус каталогу





ого спільно з fstat (). Якщо також необхідно виявляти символічні посилання, то разом з ім'ям файлу слід використовувати lstat ().

На відміну від struct dirent, яку повертає readdir (), struct stat має досить багато обов'язкових стандартних полів:

· st_mode - права доступу до файлу (користувач, група, решта) і прапори.

· st_ino - порядковий номер файлу.

· st_dev - пристрій, на якому розташований файл.

· st_nlink - лічильник числа зв'язків.

· st_uid - ідентифікатор користувача-власника файлу.

· st_gid - ідентифікатор групи-власника.

· st_size - розмір файлу в байтах (для файлів regular).

· st_atime - час останнього доступу до файлу.

· st_mtime - час останньої модифікації файлу.

· st_ctime - час створення файлу.

Використовуючи макрос S _ * () для поля st_mode, можна визначити тип файлу:

· S_ISBLK (mode) - спеціальний блоковий файл? (зазвичай це блоковий пристрій).

· S_ISCHR (mode) - спеціальний символьний файл? (зазвичай це символьне пристрій).

· S_ISDIR (mode) - каталог?

· S_ISFIFO (mode) - UNIX-канал (pipe) або файл типу FIFO?

· S_ISLNK (mode) - символічна посилання?

· S_ISREG (mode) - звичайний файл?

Функція stat () виконується досить повільно на більшості файлових систем, тому краще буде зберігати цю інформацію в пам'яті на випадок, якщо вона знадобиться пізніше.

Приклад програми:


# include lt; errno.h gt;

# include lt; dirent.h gt;

# include lt; string.h gt;

# define FOUND 0

# define NOT_FOUND 1

# define READ_ERROR 2

# define OPEN_ERROR 3

# define NOARG 4main (int argc, char * argv []) {dirent * dp; * dirp; char * name; (argc gt; 1) {= argv [1];

} else {NOARG;

}=opendir (. ); (dirp) {= 0; ((dp=readdir (dirp))!=NULL) {(strcmp (dp- gt; d_name, name ) == 0) {(dirp); FOUND;

}

} else {(errno == 0) {(dirp);

} (dirp);

}

} OPEN_ERROR;

}


2. Практична частина


. 1 Розробка блок-схеми алгоритму


Малюнок 4. Блок-схема


2.2 Прототип системного програмного забезпечення для реалізації схожою завдання


# include lt; sys/types.h gt;

# include lt; sys/stat.h gt;

# include lt; stdio.h gt; char * ctime (); ()

{_ t last; struct stat st; (stat (. raquo ;, amp; st), last=st.st_mtime;; sleep (2))

{(. raquo ;, amp; st); (last!=st.st_mtime)

{= st.st_mtime; ( Був створений або видалений якийсь файл:% s , ( amp; last));

}

}

}


Малюнок 1. ScreenShot вихідного коду програми.


Малюнок 2. Виконання вихідної програми.

dirent каталог програма алгоритм

2.3 Програмний код реалізації програми для автоматичного оновлення і виведення інформації за вказаною каталогом


Малюнок 5. ScreenShot вихідного коду програми.


Малюнок 6. Компіляція програми, команда на виконання, виконання програми.


Висновок


У даному курсовому проекті я ознайомилася зі структурою dirent. Виконала побудова блок-схеми, вивчила прототип програми для реалізації схожою завдання. Написала програмний код шляхом зміни заданого алгоритму програми за допомогою системних функцій opendir і readdir.


Список використаних джерел та літератури


Література

. Богатирьов А. Хрестоматія з програмування на Сі в Unix

. Столлман Р. Компілятор мов C, C ++, Objective C gcc 2.7

. Граннеман С. Linux. Кишеньковий довідник

Дистанційні електронні ресурси

1. # justify gt ;. # justify gt ;. # justify gt ;. # justify gt ;. h...


Назад | сторінка 2 з 3 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка програми для підрахунку хеш-суми файлу і тексту з графічним інтерф ...
  • Реферат на тему: Робота зі структурою двійкового файлу
  • Реферат на тему: Практична обробка набору даних, представленого у вигляді файлу
  • Реферат на тему: Створення текстового файлу. Довідково-пошукова система
  • Реферат на тему: Пристрій для вимірювання температури в індустріальних системах і розробка п ...