русс | укр

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

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


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


Засоби бібліотеки С


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


 

Консольним введенням/виведенням називають операції, у яких використовуються стандартні пристрої введення/виведення. Останні, в принципі, можуть перепризначуватися, однак у більшості випадків стандартним пристроєм введення є клавіатура, а стандартним пристроєм виведення інформації - екран монітора.

Засоби програмування операцій консольного введення/виведення можна класифікувати в такий спосіб. Всі бібліотечні засоби можна розділити на дві групи: функції бібліотечних модулів stdio.h і conio.h (це мова С) та засоби, пов'язані з потоками (а це вже С++). І в першому, і в другому випадках існують засоби консольного й файлового введення/виведення. Крім того, функції введення/виведення розподіляють на функції, які виконують форматні перетворення та функції, які не виконують такого роду перетворення при передаванні даних.

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

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

 

Для введення даних із клавіатури використовується функція

scanf(формат, p1, p2,... ) ;

де формат - специфікація формату, а p1, p2, ... - адреси об'єктів, значення яких вводяться. У найпростіших випадках специфікація формату для введення має такий вигляд: "%символ" , де символ - один із символів перетворення формату. Як виглядає специфікація формату у загальному випадку та які можливості керування форматними перетвореннями ми маємо - це можна подивитись у довідковій системи оболонки, яку ми застосовуємо для побудови програми. У середовищі Borland C++ для цього треба вибрати пункт "Help" головного меню вікна оболонки.

 

Виведення даних на екран здійснюється функцією printf(формат, e1, e2, ... );

де формат також є специфікація формату, e1, e2, ... - довільні вирази (або змінні), значення яких виводяться.

 

Специфікації формату

Специфікація формату для виведення звичайно має такий вигляд:

" % [ширина][.точність]символ" ,

де ширина - ширина поля виведення (кількість позицій рядка екрана),

точність - потрібна кількість цифр після десяткової крапки (остання цифра виводиться з округленням),

символ - символ форматного перетворення, пов’язаний з типом значення, яке передається.

Нижче наведені формати, які використовуються найбільш часто.

%c - введення/виведення символу (тип char);

%s - введення/виведення рядка символів (тип char*);

%d - введення цілого числа (типи short, int),

виведення цілого числа (типи char, short, int);

%ld - введення/виведення цілого числа (тип long);

%u - введення/виведення цілого числа (типи unsigned char, unsigned short,
unsigned int);

%lu - введення/виведення цілого числа (тип unsigned long);

%X - введення/виведення цілого числа в 16-ричному форматі;

%f - введення/виведення дійсного числа (тип float);

%e - введення/виведення дійсного числа у формі з десятковим порядком (тип float);

%lf - введення/виведення дійсного числа (тип double);

%Lf - введення/виведення дійсного числа (тип long double);

%*d - при введенні пропустити значення, тип якого відповідає символу d,
замість d можна записати символ, що відповідає іншому типу.

Передбачено також формати введення за зразком та інші можливості.

 

Введення одного символу

Для введення одного символу можна використати функції getchar() і getch().

Функція getchar() повертає черговий символ з буфера клавіатури. Якщо буфер порожній, очікується введення символів, яке повинно завершуватися натисканням клавіші Enter.

Для того, щоб подивитися, як працює функція getchar(), запустіть на виконання таку програму:

 

// Приклад 1

#include <syst.h>


<== попередня лекція | наступна лекція ==>
Inline T abs(T x) | Використання потоків


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