Реферат: Лабораторная работа по Операционным системам
Название: Лабораторная работа по Операционным системам Раздел: Рефераты по информатике Тип: реферат |
ГОСУДАРСТВЕННОЕ ВЫСШЕЕ УЧЕБНОЕ ЗАВЕДЕНИЕ «ЗАПОРОЖСКИЙ НАЦИОНАЛЬНЫЙ УНИВЕРСИТЕТ» МИНИСТЕРСТВА ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ АФЕДРА ИНФОРМАЦИОННЫЗ ТЕХНОЛОГИЙ ОТЧЕТ с лабораторной работы №2 Выполнил: ____________________ (подпись) студент гр. 4328-1 Глеба Р.Н. Проверил: ____________________ (подпись) Бровченко Е.Э. Запорожье, 2011 Разработать процедуру (и вспомогательную программу) разбора заданной текстовой строки (задается переменной окружения или параметром командной строки), содержащей полное имя файла (путь и имя). Процедура должна определять четыре параметра окружения - буква диска, путь, имя файла и тип файла. Исходный код #include <iostream.h> int main(int argc, char* argv[]) { int i=0,is,ik; FILE *fp; system("cls"); if (argc!=2) { cout << "ОШИБКА ПАРАМЕТРА!!!"; return 0; } fp=fopen(argv[1],"r"); if (fp==NULL) { cout << "ОШИБКА!!! Файл с таким именем не существует!!!"; return 0; } fclose(fp); while (argv[1][i]!=0) { if (argv[1][i]==':') //находим двоеточие и выделяем название диска { cout << "Диск - " << argv[1][i-1] << argv[1][i] << '\n'; break; } i++; } i++; is=i; //здесь храним позицию первого слеша while (argv[1][i]!=0) { if (argv[1][i]=='\\') { ik=i; //находим последний слеш и выделяем путь к файлу } i++; } cout << "Путь - "; for (is;is<=ik;is++) { cout << argv[1][is]; } cout << "\n" << "Имя файла - "; is=ik+1; while (argv[1][ik]!=0) { if (argv[1][ik]=='.') //находим крайнюю точку и выделяем имя файла { i=ik; } ik++; } for (is;is<i;is++) //все остальное после крайней точки - тип файла { cout << argv[1][is]; } cout << "\n" << "Тип файла - "; for (is;is<ik;is++) { cout << argv[1][is]; } return 0;} |