Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Массив символов и их инициализацияСтр 1 из 2Следующая ⇒
Лабораторная работа №5 Символьные строки Цель работы Приобретение навыков работы со строками. Планируемые результаты обучения В результате выполнения лабораторной работы должны быть сформированы и развиты следующие профессиональные компетенции: на уровне знаний: – воспроизводить синтаксис объявления одномерного, многомерного массива как числового, так символьного; – объяснять стандартные приемы для работы с числовыми и символьными массивами. на уровне понимания: – объяснять механизмы доступа к элементам массива посредством индекса и указателя. на уровне применения: – выполнять операции с символьными массивами; – осуществлять ввод и вывод символьных массивов; – применять стандартные функции для работы со строками. на уровне анализа: – анализировать разработанную программу с целью выявления логических ошибок; – локализовать ошибки выполнения программы с целью их исправления; – анализировать результаты работы программы. на уровне синтеза: – использовать математические методы и вычислительные алгоритмы для решения практических задач; – проектировать структуру программы; – организовать работу в группе при совместном решении задачи; – проектировать тестирование программы; – защищать выполненную самостоятельную работу; – принимать верное решение при коллективном решении задачи. на уровне оценки: – давать оценку эффективности работы программы, основываясь на использованных структурах хранения данных и способах организации вычислений; – оценивать возможности структурных типов данных в организации данных программы . Теоретические сведения Массив символов и их инициализация При определении строк необходимо сообщить компилятору требуемый размер памяти. Первый способ - инициализация массива при помощи строковой константы. Например: char m1[]=" Только ограничьтесь одной строкой."; Здесь оператор инициализировал внешний по умолчанию массив m1 для указанной строки. Этот вид инициализации является краткой формой стандартной инициализации массива: char m1[]={'T', 'o', 'л', 'ь', 'k', 'o', ' ', 'o', 'г'', 'p', 'a', 'н', 'и', 'ч', 'ь', 'т', 'e', 'c', 'ь', ' ', o', 'д', 'н', 'o', 'й', ' ', 'c', 'т', 'p', 'o', 'k', 'o', 'й', '.', '\0'} Без символа 0 мы имеем массив символов, а не строку. Для той и другой формы компилятор подсчитывает символы и таким образом получает размер памяти. Как и для других массивов, имя m1 является указателем на первый элемент массива: m1==& m1[0], *m1=='T', и *(m1+1)==m1[1]=='o' и т.д. Действительно, мы можем использовать указатель для создания строки. Например: char *m3=" Символьная строка."; Это почти то же самое, что и static char m3[ ]=" Символьная строка."; Оба описания говорят об одном: m3 является указателем строки со словами " Символьная строка". В том и другом случае сама строка определяет размер памяти, необходимой для ее размещения. Однако вид их не идентичен.
|