завдання с. 3 завдання с++. Загальні формати команд в С
Скачать 17 Kb.
|
Загальні формати команд в С++. Оскільки С ++ є надбезліччю С, то більшість програм на мові С є також програмами і на мові С ++. (Мається кілька невеликих відмінностей між С і С ++, завдяки яким деякі типи програм на мові С не будуть компілюватися компілятором мови С ++. Можна писати програми на С ++, які виглядають точнісінько як програми на мові С, але в такому разі не будуть використовуватися переваги, що надаються С ++ - програмістам. Крім того, більшість програмістів, які пишуть на мові С ++, використовують стиль і деякі особливості написання програм, які притаманні тільки С ++. Оскільки важливо використовувати весь потенціал С ++, то в цьому розділі ми обговоримо деякі з таких особливостей, перш ніж перейти до власне с ++. Почнемо з прикладу. Розглянемо програму на мові с ++: #include #include int main () { int i; char str [80]; cout << "I like Borland C ++. \ n"; // однорядковий коментар / * також можна використовувати С-коментарі * / printf ( "You can use printf (), but, most С ++ programs don 't. \ N"); // введення числа за допомогою >> cout << "Enter a number:"; cin >> i; // вивід числа за допомогою << cout << "Your number is" << i << "\ n"; // читання рядка cout << "Enter a string:"; cin >> str; // вивід cout << str; return 0; } Як можна бачити, ця програма виглядає зовсім добре від звичайної програми на мові С. Заголовний файл iostream.h визначено С ++ і призначений для підтримки операцій введення / виводу. Включення заголовки stdio.h обумовлено використанням функції printf (). Якщо використовуються операції введення / виведення власне мови С ++, то необхідності в цьому файлі немає. Однією з особливостей, на яку варто звернути увагу, є оголошення функції main () int main () замість int main (void) Яке використовують програми на мові С. Причина цього полягає в тому, що в мові С ++ порожній список параметрів еквівалентний специфікаторами void. Це означає, що обидва типи оголошення функції рівноправні в рамках мови С ++. В С ++ використання зарезервованого слова void для позначення порожнього списку параметрів є допустимим, але розглядається як надмірність. Оскільки воно не є необхідним, далі в наших програмах ми не будемо використовувати слово void для позначення порожнього списку параметрів. Наступний рядок коду містить кілька особливостей мови С ++: cout << "I like Borland C ++. \ N"; // однорядковий коментар Оператор cout << "I like Borland C ++. \ N"; виводить на екран «I like Borland С ++.», після чого слід перехід на наступний рядок і повернення каретки. В С ++ роль оператора << значно розширена. Він продовжує виконувати роль оператора побітового зсуву вліво, але використовується також як оператор виведення даних в разі, якщо записаний у вказаній в прикладі формі. Слово cout є ідентифікатор, який відповідає розміру екрана. Так само як і С, мова С ++ підтримує перенаправлення вводу / виводу, але, щоб уникнути дискусій на цю тему, ми можемо прийняти, що cout посилається на екран. Можна використовувати cout і оператор << для виведення даних будь-якого вбудованого типу, а також для виведення рядків символів. Важливо відзначити, що можна продовжувати користуватися функцією printf () (що проілюстровано в записаної вище програмі) або будь-який інший функцією введення / виведення мови С, але більшість програмістів знаходять, що використання cout << більш відповідають духу С ++. У загальному випадку програми на мові С ++ можуть використовувати будь-які функції, підтримувані Borland С ++, включаючи і ті, що визначені мовою С. Однак, в тих випадках, коли С ++ пропонує альтернативний підхід, йому слід віддавати перевагу перед використанням функцій мови С, хоча і немає правил, розпорядчих це. У попередньому рядку коду коментарі С ++ слідували за виразом для виведення даних. В С ++ коментарі визначаються двома способами. Коментарі мови С зберігають своє зна ня і в С ++. Однак в С ++ можна також визначити коментарі розміром в один рядок, використовуючи //. Коли коментарі починаються з //, все, що слідує за цими знаками, ігнорується компілятором до кінця рядка. Зазвичай при включенні багаторядкових коментарів використовують нотацію С, а однорядкових - С ++. Далі програма виводить запит-підказку користувачу, щоб він ввів число. Число читається з клавіатури, використовуючи наступну інструкцію: cin >> i; В С ++ оператор >> зберігає своє значення зсуву вправо, але якщо він використовується як показано вище, то служить оператором введення числа з клавіатури і запису його в змінну i. Ідентифікатор cin посилається на клавіатуру. У загальному випадку можна використовувати cin >> для завантаження змінних будь-якого базового типу або рядки. Хоча в програмі це і не проілюстровано, можна вільно використовувати будь-яку функцію С для введення даних, наприклад, функцію scanf (), замість cin >>. Однак, як і у випадку з cout, переважна більшість програмістів знаходять використання cin >> в більшій мірі відповідає духу С ++. Розглянемо іншу цікаву рядок програми: cout << "Your number is" << i << "\ n"; Цей код виводить на екран наступну фразу (передбачається, що значенням i служить 100): Your number is 100 після якої йде переклад каретки і перехід на новий рядок. У загальному випадку можна виконувати стільки операцій виведення <<, скільки треба. Інша частина програми демонструє, як можна прочитати і вивести рядок, використовуючи cin >> і cout <<. При введенні рядка cin >> припиняє читання, як тільки зустрічає спеціальний символ. Це аналогічно тому, що робить стандартна функція scanf () при введенні рядка. |