![]()
|
|||||||
Учебная практика № 18. Цель и порядок работы. Краткая теория. Ввод-вывод строкСтр 1 из 15Следующая ⇒ Учебная практика № 18 1 Цель и порядок работы Цель работы – ознакомиться с возможностями ввода-вывода языка C++, освоить основные операции работы со строками и файлами. Порядок выполнения работы: · ознакомиться с описанием лабораторной работы; · получить задание у преподавателя, согласно своему варианту; · написать программу и отладить ее на ЭВМ; · оформить отчет. 2 Краткая теория В библиотеке C++ имеется набор классов для управления вводом-выводом. В отличие от функций буферизованного ввода-вывода библиотек C (таких, как printf и scanf, не выполняющих никаких проверок на соответствие аргументов форматной строке) классы потоков C++ безопасны в отношении типа. Ввод-вывод использует механизм перегрузки операций, гарантирующий вызов нужной функции-операции для указанного типа данных. Это главное преимущество потоков языка C++. 2.1 Строки в C++ 2.1.1 Ввод-вывод строк В C++ есть два вида строк С-строки и класс string стандартной библиотеки C++. C-строка представляет собой массив символов, завершающийся символом с кодом 0. Класс string более безопасен в использовании, чем C-строки, но и более ресурсоемок. Для грамотного использования этого класса требуется знание объектно-ориентированного программирования. Кроме этого существуют более функциональные и удобные в использовании классы библиотеки .net, которые будут рассмотрены позже, поэтому ограничимся рассмотрением C-строк. Память под строки, как и под другие массивы, может выделяться как компилятором, так и непосредственно в программе. Длина динамической строки может задаваться выражением, длина нединамической строки должна быть только константным выражением. Чаще всего длина строки задается частным случаем константного выражения – константой. Удобно задавать длину с помощью именованной константы, поскольку такой вариант, во-первых, лучше читается, а во-вторых, при возможном изменении длины строки потребуется изменить программу только в одном месте:
|
|||||||
|