Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Программирование. Лабораторная №1

.pdf
Скачиваний:
24
Добавлен:
08.03.2016
Размер:
863.45 Кб
Скачать

Лабораторна робота № 1

ДОСЛІДЖЕННЯ СЕРЕДОВИЩА VISUAL STUDIO 2013. НАЛАШТУВАННЯ КОМПІЛЯТОРУ МОВИ С.

ФУНКЦІЇ ВВЕДЕННЯ-ВИВЕДЕННЯ. СТАНДАРТНІ ТИПИ ДАНИХ

Мета: Ознайомитися з інструментальним середовищем розробки додатків Microsoft Visual Studio 2013 у режимі компілятору мови С. Дослідити введення-виведення інформації за типом. Створити програму на мові С.

ТЕОРЕТИЧНА ЧАСТИНА

Мова С створена Денисом М. Рітчи у 1972 р. для операційної системи UNIX [1]. Деякий час була відсутня єдина політика щодо стандартизації цієї мови програмування. У 1990 р. з’явився перший офіційний документ зі стандарту мови С ISO/IEC 9899:1990, який скорочено називають С89. У 1999 р. цей стандарт вдосконалили (С99).

Програмування будемо вести в середовищі Visual Studio 2013, яке підтримує стандарт мови С99, за допомогою компілятору мови С++. Для цього на комп’ютері повинно бути встановлене це інтегроване середовище.

Існують наступні комплектації Visual Studio 2013:

o express – безкоштовне середовище розробки, містить лише базовий набір можливостей та бібліотек;

o professional – середовище, орієнтоване на професійне створення програмного забезпечення та командну розробку (при якій над створенням однієї програми працюють одночасно декілька людей);

opremium – містить додаткові інструменти для роботи з кодом програм та для створення баз даних;

oultimate – найбільш повна версія Visual Studio, містить інструменти для написання, тестування, налагодження і аналізу програм, а також додаткові інструменти для роботи з базами даних і для проектування архітектури

програмного забезпечення.

Особливістю середовища Visual Studio 2013 є підтримка роботи з декількома мовами програмування та програмними платформами. Отже, перед тим як писати програму на мові С, необхідно виконати підготовку по вибору та налаштуванню компілятора мови С для трансляції коду.

1.1.Створення додатку в середовищі Visual Studio 2013

Для запуску Visual Studio 2013 необхідно двічи клацнути по іконці , після чого з’явиться початкова сторінка (рис. 1.1).

Рис. 1.1. Стартова сторінка Microsoft Visual Studio 2013

Для створення нового проекту в меню «Запустити» необхідно вибрати вкладку «Сотворити проект» (або натиснути комбінацію клавіш Ctrl + Shift + N).

Проект (project) використовується в Visual Studio для логічного угруповання декількох файлів, що містять вихідний код, на одній з підтримуваних мов програмування, а також будь-яких допоміжних файлів. Зазвичай після збірки проекту (яка включає компіляцію всіх файлів, що входять до проекту) створюється єдиний модуль для

виконання.

 

 

 

У

вікні

створення проекту

(New Project) слід

обрати шаблон

Visual

С++

та на центральній

панелі обрати пункт

«Консольний

додаток Win32» (рис. 1.2).

Рис. 1.2. Вибір типу проекту

Після вибору типу проекту в полі редактора Ім’я (Name) слід ввести його назву, наприклад, hello. Вибір назви проекту може бути достатньо вільним: допустимо використання чисел, літер латинського алфавіту та кирилиці. У полі Розташування (Location) необхідно вказати місце знаходження проекту. За замовченням проект зберігається в спеціальній папці Projects. Одночасно з проектом Visual Studio створює рішення (solution), яке може об’єднувати декілька проектів для організації більш зручної роботи з ними.

Після натискання на кнопку «OK» з’явиться вікно майстру додатку Win32

(рис. 1.3).

Рис. 1.3. Вікно майстру додатку Win32

У параметрах додатку необхідно зробити первинне налаштування (рис. 1.4). У полі

«Додаткові параметри» слід зняти галочку з поля «Попередньо скомпільований заголовок» (Precompiled header) та обрати «Пустий проект» (Empty project).

Рис. 1.4. Виконання налаштування майстра додатку Win32

Усі подальші проекти будемо створювати за вищенаведеною схемою. Після натискання кнопки «Готово» (Finish) отримаємо екранну форму (рис. 1.5), де необхідно додати файл для створення коду до проекту. Стандартний шлях для цього підвести курсор миші до папки «Файли вихідного коду» (Source Files) вузла hello в оглядачі рішень, клацнути правою кнопкою миші та обрати поле «Додати» (Add), потім клацнути по полю «Створити новий елемент» (New Item).

Рис. 1.5. Меню додавання нового елементу до проекту

У результаті відкриється вікно вибору типу файлів (рис. 1.6), де, у даному випадку, слід обрати вкладку «Файл С++ (.cpp)».

Рис. 1.6. Вікно вибору типу файлу для підключення до проекту

Тепер у полі редактору Name (в нижній частині вікна) слід задати ім’я нового файлу та вказати розширення .с, наприклад, hello.c та натиснути кнопку «Додати» (Add). Ім’я може бути довільним, але існує негласна угода, що воно повинне показувати

призначення файлу і логічно описувати вихідний код, що у ньому міститься. Доданий файл з’являється в дереві оглядача рішень (Solution Explorer) під вузлом «файли з вихідним кодом» (Source Files). Для нього автоматично відкривається редактор (рис. 1.7).

Рис. 1.7. Підключення файлу проекту

Призначення папок в оглядачі рішень:

Папка Source Files містить файли з вихідним кодом (файли з розширенням .с);

Папка Header Files містить заголовні файли з розширенням .h;

У папці Resource Files представлені файли ресурсів, наприклад зображення тощо;

Папка External Dependencies (зовнішні залежності) відображає файли, що не додані в проект явно, але які використовуються у файлах вихідного коду, наприклад включені за допомогою директиви #include. Зазвичай в цій папці присутні заголовні файли стандартної бібліотеки.

Наступний крок налаштування проекту. Для цього в меню «Проект» (Project) головного меню слід обрати «Властивості: hello». Приклад звернення до цього пункту меню наведено на рис. 1.8.

У вікні властивостей проекту, оберіть пункт «Властивості конфігурації» (Configuration Properties). Через нього можна отримати доступ до «набору символів» (находяться у правій панелі). Налаштування набору символів дозволяє визначити кодування символів – ANSI або UNICODE – буде використано при компіляції програми. Для сумісності зі стандартом C89 слід обирати пункт «Використовувати багатобайтове кодування» (Use Multi-Byte Character Set), це дозволить залучити багато зручних функцій, наприклад, з виведення інформації на консоль. Після вибору слід натиснути кнопку «Застосувати».

Після цього оберіть у спадаючому меню вузла «С/С++» пункт «Створення коду» (Code Generation), через який в правій частині панелі зверніться до закладки «Вімкнути С++ виключення» (Enable C++ Exceptions), встановив для неї «No» (рис. 1.9). Потім слід натиснути кнопку «Застосувати».

Рис 1.8. Сторінка властивостей проекту

Рис. 1.9. Сторінка властивостей для заборони виключень С++

Далі в спадаючому меню вузла С/С++ виберіть пункт «Мова» (Language) та встановить наступні значення:

«Вимкнути розширення мови» (Disable Language Extensions) – Yes (/Za);

«Вважати тип WChar_t як вбудований тип» (Treat WChar_t As Built in Type) – No (/Zc:wchar_t–);

«Забезпечення погодження видимості змінних, що об’явлені в заголовку оператора for» (Force Conformance in For Loop Scope) Yes (/Zc:forScope);

«Ввімкнути інформацію щодо типів часу виконання» (Enable Run-Time Type Information) – No (/GR–);

«Підтримка Open MP» (Open MP Support) використовується під час написання програм для багатопроцесорних систем – No(/openmp–).

Після виконання вказаних дій слід натиснути кнопку «Застосувати». Результат виконання цих дій наведено на рис.1.10.

Рис. 1.10. Сторінка властивостей вкладки «Мова»

У спадаючому меню вузла С/С++ оберіть пункт «Додатково» (Advanced) та у правій панелі змініть властивість «Компілювати як» (Compile As) на «Компілювати як код C(/TC) (рис.1.11). Після послідовного натискання кнопок «Застосувати» та «ОК» відкриється підготовлений проект з пустим полем редактора коду, в якому можна писати програми.

Рис. 1.11. Вибір режиму компіляції мови С

У цьому редакторі наберіть код, показаний на рис. 1.12. Скомпільована програма виводить на консоль традиційне привітання «Hello, World!».

Рис. 1.12. Перша програма на мові С

Для компіляції створеної програми оберіть меню «Збірка» (Build) або натисніть комбінацію клавіш Ctrl + F7. На рис. 1.13 показано вкладнику виводу, яка з’являється при компіляції та показує, успішно чи з помилками проведено зборку.

Рис. 1.13. Інформація щодо компіляції програми

Запуск програми на виконання здійснюється з вікна редактору в Visual Studio 2013, або натисканням на клавішу F5 (рис. 1.14).

Рис. 1.14. Консольне виведення першої програми

1.2.Розбір першої програми

В мові С немає стандартних інструкцій (операторів) для виведення повідомлень на консоль, а передбачені спеціальні бібліотечні файли, які містять готові функції для цього. У будь-якій програмі, написаній на мові С, обов’язково застосовують заголовний (бібліотечний) файл з ім’ям stdio.h, який містить функції для стандартного введення та

виведення інформації. Для виведення повідомлень на консоль використовують функцію printf(). Для роботи з консоллю в програму слід включити заголовний файл conio.h, що підтримує функцію _getch().

З функції main()програма починає виконання, отже вона є точкою входу в програму [3]. Наявність круглих дужок після слова main свідчить про те, що це ім’я функції. Якщо в дужках пусто, або стоїть службове слово void, то це означає, що в функцію не передається ніяких аргументів. Тіло будь-якої функції, у тому разі й функції main(), обмежено парою фігурних дужок. Усі строки програми, обмежені дужками, належать відповідній функції.

Утілі функції main() є дві інструкції. Виклик функції printf(), що знаходиться

убібліотеці компілятора мови С, дозволяє надрукувати або відобразити аргументи, підставлені замість параметрів.

Функція _getch() приймає повідомлення у тому разі, коли натискають будь-яку не функціональну клавішу на клавіатурі.

Будь-які дії в програмі завершують символом точки з комою.

1.3.Файли проекту

Усі файли проекту зберігаються в папці, сформованій після заповнення полів з розташування (Location) та з ім’ям проекту. На рис. 1.15 наведено папки та файли проекту

Visual Studio 2013.

Рис. 1.15. Файли та папки створеного проекту

Кожний файл має деяке значення:

hello.sln – файл рішення для створеної програми. Він містить інформацію про те, які проекти входять у дане рішення. Проекти розташовані в окремих підкаталогах. Наприклад, наш проект перебуває в підкаталозі hello;

hello.sdf – файл містить допоміжну інформацію, що використовується інструментами аналізу коду Visual Studio, такими як IntelliSense для відображення підказок тощо.

Розглянемо файли папки Debug:

hello.exe – файл проекту, що виконується;

hello.ilk – файл «incremental linker», який використовується для прискорення процесу компонування;

hello.pdb – інформація щодо імен у виконуваних файлах (використовується налагоджувачем).

Характеристика вмісту папки hello:

hello.vcxproj – файл проекту;

hello.vcxproj.user – файл користувальницьких налаштувань;

hello.vcxproj.filters – файл із описом фільтрів Visual Studio Solution Explorer для організації та відображення файлів з вихідним кодом.

1.4.Функції введення-виведення інформації

Програми, наведені на рис. 1.16-1.18 також дозволяють вивести на консоль текст «Hello, World!». На рис. 1.16 показано код, в якому для виведення тексту «Hello, World!» застосовано функцію не форматного виведення puts().

Рис. 1.16. Функція не форматного виведення puts()

У програмі, наведеній на рис. 1.17, текст «Hello, World!» присвоюють змінній str. Службове слово char вказує на те, що змінна str буде зберігати символьну інформацію, а квадратні дужки після неї str[] вказують на те, що ця змінна є масивом (в якому можна зберігати декілька символів (строку). Текст, що присвоюють цій змінній записується у лапках. Тоді функцією printf() можна вивести на консоль значення змінної str[].

Рис. 1.17. Ініціалізація символьного масиву str[]

Функція printf() це функція форматного виведення. Отже, кожному типу змінних відповідає свій формат (табл. 1.1).