Написать программу, которая в текстовом файле, заменяет все строчные буквы прописными, и наоборот - C (СИ)
Формулировка задачи:
Помогите с задачей пожалуйста!
Написать программу, которая в текстовом файле, заменяет все строчные буквы прописными, и наоборот.
Решение задачи: «Написать программу, которая в текстовом файле, заменяет все строчные буквы прописными, и наоборот»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <sys/mman.h> #include <ctype.h> #define FILE_NAME "file.txt" int main(void) { struct stat sb; off_t len; char * p; int fd; if ( ( fd = open(FILE_NAME, O_RDWR) ) < 0 ) { perror("open"); return 1; } if ( fstat(fd, &sb) < 0 ) { perror("fstat"); return 1; } if ( ( p = mmap(0, sb.st_size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0) ) == MAP_FAILED ) { perror("mmap"); return 1; } if ( close(fd) < 0 ) { perror("close"); return 1; } for ( len = 0; len < sb.st_size; ++len ) p[len] = ( isupper(p[len]) ) ? tolower(p[len]) : toupper(p[len]); if ( munmap(p, sb.st_size) < 0 ) { perror("munmap"); return 1; } return 0; }
Объяснение кода листинга программы
- Включаются необходимые заголовочные файлы
- Подключается библиотека ctype.h для использования функций isupper, tolower, toupper
- Определяется имя файла, с которым будет работать программа
- Объявляется переменная типа int с именем main, которая всегда возвращает 0
- Определяется структура stat, используемая для получения информации о файле
- Открывается файл с помощью функции open. Если файл не может быть открыт, программа выводит сообщение об ошибке и возвращает 1
- Функция fstat используется для получения информации о файле
- Используется функция mmap для отображения файла в память. Если файл не может быть отображен в память, программа выводит сообщение об ошибке и возвращает 1
- Закрывается файловый дескриптор с помощью функции close
- Происходит замена строчных букв на прописные и наоборот с помощью цикла for и условий if
- Используется функция munmap для освобождения памяти, занимаемой файлом
- Программа возвращает 0, указывая, что все действия были выполнены успешно
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д