русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Перші кроки


Дата додавання: 2014-11-28; переглядів: 802.


Єдиний спосіб навчитися нової мови програмування — це власне писати на ній програми. Перша програма для написання — подібна в усіх мовах: вивести на екран

hello, world

Це є першою, важливою віхою. Щоб її подолати, ви повинні спочатку створити текст програми, компілювати його, завантажити, запустити програму і, нарешті, з'ясувати куди саме надійшов вивід. Після освоєння цих механічних деталей, все інше відносно легко.

У C, програма виводу «hello, world» виглядатиме так:

#include <stdio.h>

 

main()

{

printf("hello, world\n");

}

Як запустити цю програму, певною мірою, залежить від використовуваної вами системи. Так, скажімо, в операційній системі Юнікс, ви повинні створити файл із закінченням «.c», наприкладhello.c, потім компілювати його командою

cc hello.c

Якщо ви ніде не схибили, як от пропустили якийсь знак або припустилися орфографічної помилки, процес компіляції пройде безшумно і видасть виконуваний файл з назвою a.out. Після того, як ви запустите a.out командою

a.out

у вас на екрані з'явиться

hello, world

На інших системах правила компіляції можуть у чомусь відрізнятися — спитайтеся місцевого фахівця.

Тепер — до пояснення самої програми. Програма мовою C, незалежно від свого розміру, складається з функцій та змінних. Функції містять вирази, що вказують на обчислювальні дії, які матимуть місце, а змінні, в свою чергу, зберігають значення, використовувані під час обчислень. Функції C подібні до підпрограм і функцій Fortran або процедур та функцій Pascal. У нашому прикладі, це функція під назвою main. Зазвичай, ви можете надавати своїм функціям довільні імена, але «main» — це спеціальна назва. Програма починає своє виконання на початку main. Це означає, що кожна програма повинна містити main в якомусь місці.

Функція main звичайно викликає інші функції для допомоги виконання своєї роботи, деякі написані вами, а деякі з наданих вам бібліотек. Перший рядок програми,

#include <stdio.h>

вказує компілятору включити інформацію про стандартну бібліотеку вводу/виводу; цей рядок з'являється на початку багатьох вихідних текстів C. Стандартна бібліотека описана в Розділі 7 іДодатку Б.

Один із способів обміну даними між функціями — це передання викликовою функцією списку значень, які називаються аргументами, функції, яку вона викликала. Дужки після назви функції оточують список аргументів. У цьому прикладі, main вказано як функцію, яка не очікує жодних аргументів, що видно з порожнього списку в дужках ( ).

  #include <stdio.h> включає інформацію про стандартну бібліотеку   main() означує функцію із назвою main, яка не одержала жодних значень аргументів { вирази, що належать main, взято у фігурні дужки printf("hello, world\n"); main викликає функцію зі стандартної бібліотеки printf для того, щоб вивести послідовність знаків } \n означає знак нового рядка
Перша C-програма

Твердження, які належать функціям, включаються у фігурні дужки { }. Функція main містить тільки одне таке твердження:

printf("hello, world\n");

Функція викликається вказівкою її назви, за якою слідує список аргументів у дужках, а отже тут викликано функцію printf з аргументом «hello, world\n». printf — функція бібліотеки для друкування виводу, у цьому випадку — ланцюжка знаків між лапками.

Послідовність знаків, включених у подвійні лапки, як от «hello, world\n», називаєтьсясимвольним ланцюжком або символьною константою. Поки-що, єдине місце, де ми будемо вживати символьні ланцюжки, — це в якості аргументу printf та інших функцій.

Послідовність знаків \n означає в C символ нового рядка, який під час виводу переводить ланцюжок тексту на новий рядок. Якщо ви пропустите \n (варте того, щоб зробити експеримент), то виявите, що після виводу перенесення рядка не відбувається. Ви маєте скористатися з \n, щоб включити знак нового рядка в аргумент printf; якщо ж ви спробуєте щось на зразок

printf("hello, world

");

то компілятор C повідомить про помилку.

printf ніколи не додає знака нового рядка автоматично, що дає можливість використання декількох викликів для поетапної побудови виводу. Так, нашу першу програму можна би було з таким самим успіхом написати як

#include <stdio.h>

 

main()

{

printf("hello, ");

printf("world");

printf("\n");

}

що призведе до тотожного виводу.

Замітьте, що \n насправді означає тільки один знак. Екрановані послідовності на кшталт \nявляються загальним механізмом позначення «важких для друкування» або невидимих символів. Наряду з іншими, C також передбачає \t для табуляції, \b для реверсу, \" для виводу подвійних лапок і \\ для самої зворотньої похилої. Повний список можна знайти у Розділі 2.3.

Вправа 1-1. Виконайте програму «hello world» на вашій системі. Поекпериментуйте з видаленням частин програми, щоб побачити, які помилки при цьому виникнуть.

Вправа 1-2. Дізнайтесь, що станеться, якщо вказати як аргумент printf послідовність \c, де cявлятиметься одним із знаків, не згаданих вище.


<== попередня лекція | наступна лекція ==>
Розділ 1: Введення | Змінні й арифметичні вирази


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн