Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Лабораторна робота 4.«Одновимірні масиви.Покажчики. Рядки»(4 год.)Содержание книги
Поиск на нашем сайте
Ціль роботи: Формування уміння описувати, ініціалізувати масиви, роздруковувати вміст масиву, виконувати прості операції над масивами. Одержання навичок використання покажчиків для звертання до масиву і його елементів.Освоєння прийомів роботи із символами й рядками, застосування бібліотечних функційдля обробки рядків. Теоретичні відомості Масиви й покажчики Зі змінних будь-якого типу можна утворювати масиви. При оголошенні масиву вказується тип даних, ідентифікатор (ім'я) масиву й число елементів масиву у квадратних дужках: double mas[10]; // Масив з п'яти елементів типу double Індекси елементів масиву починаються з 0, індекс останнього елемента на одиницю менше числа елементів у масиві. Масив можна ініціалізувати списком значень у фігурних дужках: int b[4] = {1, 2, 3, 4}; Для звертання до елемента масиву вказується ідентифікатор масиву й індекс елемента в квадратних дужках, наприклад, b[2], mas[5]. Змінна, значенням якої є адреса іншої змінної, називається покажчиком. При оголошенні покажчика перед ідентифікатором записується знак *: int a, *pa; – оголошення цілої змінної а й покажчика ра на цілочисельну змінну. Щоб покажчик зв'язати з певною змінною, потрібно покажчику присвоїти адресу цієї змінної: pa = &a; У С/С++ ім'я масиву є також покажчиком на масив, що посилається на перший елемент масиву (елемент із індексом 0). Таким чином, адресу першого елемента масиву можна одержати як pa або &a[0]. Значення першого елемента масиву повертається операцією розіменування: int w = *pa; – зміннійw присвоїли значення змінної, розміщеної за адресою pa, тобто a[0]. Записи «покажчик-зсув» і «покажчик-індекс» Покажчик масиву посилається на перший елемент. Зміщуючи покажчик, можна звернутися до наступних елементів масиву, наприклад, W = *(pa+2); – змінній w присвоюється значення 3-го елемента масиву. Наведений запис – це запис "покажчик-зсув". Дужки обов’язкові, оскільки пріоритет операції * вище, ніж пріоритет +. Адреса елемента a[2], тобто &a[2], може бути записана як pa+2. Усі елементи масиву можна записати за допомогою покажчиків і зсувів, а запис "покажчик-зсув" можна застосовувати до імені масиву як до покажчика, наприклад. w = *(a+1) – змінній w присвоєне значення 2-го елемента a[1]. Покажчики можна проіндексувати точно так само, як і масив. Наприклад, виразpa[1]посилається на елемент масиву a[1]. Даний вираз називається записом "покажчик-індекс". Наведемо приклад виведення елементів масиву з використанням запису «покажчик-зсув» int v[3]={1,3,5}; int*p1=v; for(int i=0;i<3;i++) cout<<*(p1+i)<<"\t"; Для виведення елементів із використанням запису «покажчик-індекс» в операції cout потрібно записати: cout <<p1[i]<<"\t"; Рядки як одновимірні масиви У мові С рядок подається як одновимірний масив змінних типу char, останнім елементом якого автоматично є нульовий символ '\0'. Можливі кілька видів оголошень масиву символів. По-перше, це може бути абстрактний рядок без вказівки розміру масиву: charname[] = "Andrey"; Тут число елементів масиву визначається автоматично й дорівнює 7 (з урахуванням останнього елемента '\0'). По-друге, масив символів може мати більше елементів, чим містить абстрактний рядок: char name[10] = "Andrey"; Тут три останніх елементи масиву не використовуються. Нарешті, рядок може бути оголошений за допомогою покажчика. Перед використанням покажчика рядок вже повинен існувати, наприклад: char name[] = "Andrey"; char *namePtr; namePtr = name; Відзначимо, що при присвоєнні покажчику адреси масиву не потрібно використати адресний оператор &, тому що ім'я масиву поводить себе подібно адреси. Передача рядка у функцію Якщо потрібно передати в деяку функцію рядок, то передається як параметр ім'я рядка-масиву або покажчик на рядок. Використання імені масиву. Запишемо визначення функції, що друкує рядок, і виклик цієї функції: void print(char client[]){ cout << "Name of client: " << client << endl; } ... int main(){ char client1[] = "Serg"; ... print(client1); ... Використання покажчика на рядок. Якщо є покажчик на масив-рядок: char *client1Ptr= client1; то можна передати у функцію покажчик: print(client1Ptr); Результат буде тим же, як і при передачі імені масиву, оскільки масив передається у функцію через посилання, тобто через покажчик.
|
||||
Последнее изменение этой страницы: 2016-12-29; просмотров: 296; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.100.40 (0.006 с.) |