Функцiя Find_Name здiйснює пошук iмени у каталозi. Тут cname - потрiбне iм`я, функцiя повертає iндекс знайденого елемента у масивi dir або (-1).
Функцiя End_of_Job здiйснює видачу на екран рiзних повiдомлень при помилках або при завершеннi програми.
Результати:
Лабораторная робота N10
Дискові структури даних DOS.
Файл D:\TC\TC.EXE у FAT займає такi кластери :
Натискуйте будь-яку клавiшу доки не з`явится <КIНЕЦЬ ФАЙЛА>.
+<ПОЧАТОК ФАЙЛУ>
+->2410--->2411--->2412--->2413--->2414--->2415--->2416--->2417-
-->2418--->2419--->241a--->241b--->241c--->241d--->241e--->241f-
-->2420--->2421--->2422--->2423--->2424--->2425--->2426--->2427-
-->2428--->2429--->242a--->242b--->242c--->242d--->242e--->242f-
-->2430--->2431--->2432--->2433--->2434--->2435--->2436--->2437-
-->2438--->2439--->243a--->243b--->243c--->243d--->243e--->243f-
-->2440--->2441--->2442--->2443--->2444--->2445--->2446--->2447-
-->2448--->2449--->244a--->244b--->244c--->244d--->244e--->244f-
-->2450--->2451--->2452--->2453--->2454--->2455--->2456--->2457-
-->2458--->2459--->245a--->245b--->245c--->245d--->245e--->245f-
-->2460--->2461--->2462--->2463--->2464--->2465--->2466--->2467-
-->2468--->2469--->246a--->246b--->246c--->246d--->246e--->246f-
-->2470--->2471--->2472--->2473--->2474--->2475--->2476--->2477-
-->2478--->2479--->247a--->247b--->247c--->247d--->247e--->247f-
-->2480--->2481--->2482--->2483--->2484--->2485--->2486--->2487-
-->2488--->2489--->248a--->248b--->248c--->248d--->248e--->248f-
-->2490--->2491--->2492--->2493--->2494--->2495--->2496--->2497-
-->2498--->2499--->249a--->249b--->249c--->249d---><КIНЕЦЬ ФАЙЛА>
Кiлькiсть кластерів, якi займає файл: 142
Натиснiть будь-яку клавiшу...
Постановка задачі №2: Розробити програму, яка виводить на екран розмір будь-якого файлу у байтах.
Текст програми Length:
#include <conio.h>
#include <io.h>
#include <stdio.h>
#include <fcntl.h>
int main(void)
{ int handle;
long length;
char fname[80], c;
// Запрашиваем имя файла, с которым будем работать
clrscr();
printf("Введите имя файла(полный путь с учетом регистров букв): ");
gets(fname);
// Открываем файл
handle = open(fname, O_BINARY | O_RDONLY);
// Если такого файла нет, выводим сообщение об ошибке
// и завершаем работу программы
if(handle == -1)
{ printf("\nНет такого файла!");
return(-1);}
// Определяем и выводим на экран
// размер файла в байтах
length = filelength(handle);
printf("\nДлина файла %s составляет %ld байт\n",fname, length);
c=getch();
// Закрываем файл
close(handle);
return 0; }
Програма складається тільки з головної програми int main (void).
int handle; - використовується для відкриття файлу, та перевірки на його існування;
long length; - потрібна для визначення розміру файлу у байтах
char fname[80] – ім’я файлу (максимальна кількість символів – 80);
char c – додаткова змінна;
Вводится повний шлях до файлу та його повне ім’я. Якщо цей файл існує, то програма продовжує роботу з ним, але якщо ні, то виводиться повідомлення про помилку і завершується робота програми.
В разі нормальної роботи на екран виводиться інформація про вказаний файл (його розмір у байтах).
Результати:
Введите имя файла(полный путь с учетом регистров букв): d:\Hakers\Max\Spo\Lab11\lab10.txt
Длина файла d:\Hakers\Max\Spo\Lab11\lab10.txt составляет 22025 байт
Висновки: В ході лабораторної роботи було відкомпільованно базовий варіант програми, яка виводить список кластерів вказаного файлу.
Також розроблено програму, яка визначає розмір файлу у байтах.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.