|
|||
необхідно підключити файл stdio.h)
БІБЛІОТЕЧНІ ФУНКЦІЇ вводу виводу. 1 ( необхідно підключити файл stdio.h) 1 Вивід інформації 1 Рядок формату: 1 Введення інформації 3 Функції файлового вводу-виводу. 4 Текстові файли з буферизацією.. 4 Закриття файлу: fclose(in ) ; 5 Ввод/вивід файлу: getc( ) і putc( ) (stdio.h) 5 Ввід/вивід ФАЙЛУ: fprintf(), fscanf(), fgets() И fputs() 6 Функція fgets() 7 Функція fputs( ) 8 Неформатований ввід/вивід. 8 ДОВІЛЬНИЙ ДОСТУП: fseek( ) 8
Засоби вводу/виводу безпосередньо в мову С++( так само як і С) не входять. У програмах мовою С++ можна рівноправно використовувати дві бібліотеки вводу виводу: стандартну бібліотеку С и бібліотеку класів, створену спеціально для С++. БІБЛІОТЕЧНІ ФУНКЦІЇ вводу виводу ( необхідно підключити файл stdio.h) Вивід інформації putchar( ) /* друк символу putchar(‘a’); a=’a’;putchar(a); */ puts( ) /* друк рядка puts(“a”);a=”aa”;puts(a); може не здійснювати перехід новий рядок( треба перевіряти перед використанням)*/ Фунция - printf( ) /* друк форматованого виводу */ -список параметрів складається із двох частин. Перша частина - рядок формату, друга- список даних Рядок формату: Кожний вказівник формату починається із символу %, за яким ідуть специфікатори: % [flags][width][.prec]<type_char>, Де тільки наявність <type_char> (символ типу перетворення) є обов'язковим. flags: - -вирівнює результат по лівому краю, доповнюючи його, при необхідності, праворуч проміжоками. По умовчання йде вирівнювання по правому краю. + - якщо виводиться число, то знак + теж виводиться. «проміжок « - якщо значення ненегативно, те виводиться проміжок замість + Width – специфікатор ширини, задає мінімальну ширину виведеного поля. Якщо не заданий або малий, то поле розширюється до необхідного розміру. Якщо перед специфікатором поставити 0, то число ліворуч доповниться нулями. prec – специфікатор точності, вказується кількість цифр після крапки. Символи типу перетворення: 1. d - ціле 2. u – ціле без знака 3. f – речовинне тип float або double 4. e – речовинне число в експоненціальній формі 5. g – речовинне число, відображуване по формату “e”або “g”, залежно від того, яка форма є більш короткою. 6. c - символ 7. s –рядок 8. про – переклад в 8 річну систему числення 9. х – переклад у шістнадцятирічну систему числення Усі інші символи в рядку формату виводяться на екран без зміни. Приклад: main() {int a=5; char s=’А'; float x=33.435; printf(“мені %d yeas old %cх=%8.2f”,a,s,x); //х буде вирівняно по правому краю. Треба спочатку -, тоді по лівім. } Функція sprintf виводить інформацію не на стандартне обладнання виводу, а в символьний рядок. shar str[80]; sprintf (str,“мені %d yeas old %cх=%8.2f”,a,s,x); Введення інформації getchar( ) із клавіатури одиничний символ char OR int int s1;char s2; s1=getchar();s2=getchar(); Є версії компіляторів, у яких символ уводиться відразу ж, не очікуючи натискання <ENTER>. Але не в нашому випадку. У нашому компіляторові не очікує <ENTER> функція getch(). gefs( ) /* одержання рядка */ уводить рядок у змінну. char s[15]; gets(s); уводить 14 символів у змінну й наприкінці додає \0. При введенні символи відображаються на екрані в режимі луни, уведення відбувається тільки після натискання <ENTER>, тобто можна вводити проміжки scanf( ) /* одержання форматованого вводу */ є багатоцільовий, яка дозволяє вводити дані будь-яких типів. Функція сканує (переглядає) клавіатуру, визначає, які клавіші натиснуті, а потім інтерпретує вводу, ґрунтуючись на вказівниках формату. Список параметрів scanf( )складається із двох частин: рядка формату й списку даних. Рядок формату визначає, яким чином повинні бути интепретировані дані, що вводяться. Список даних містить змінні, у які повинні бути занесені значення, що вводяться. У списку даних треба вказувати адресузмінної, а не її ім'я ( для рядка просте ім'я). Після натискання <ENTER> дані передаються функції scanf( ) у вигляді набору символів. Функція визначає, які символи відповідають типу, заданому вказівником формату, а які слід ігнорувати. Функція ігнорує не утримуючі інформації знаки: проміжки, символи табуляції, знаки нового рядка, крім тих випадків тип, що коли тече, визначений, як рядок. При ввводе рядка функція почне присвоювання з першого значущого символу, ігноруючи проміжки спереду, і зупиниться, зустрівши перший проміжок серед значимих символів. При введенні чисел, функція переглядає вхідний потік і визначає, які символи можна ввести, а які слід ігнорувати. Якщо цифрові символи передую нецифровим, сканування триває, поки не зустрінеться нецифровий символ або проміжок. Цифрові символи перетворяться в число й заносяться за адресою змінної. Якщо нецифрові символи передують цифровим, функція припиняє роботу й уся надрукована послідовність ігнорується.Якщо вводу йде через буфер, то символи при цьому залишаться в буфері й будуть обрані при наступнім уведенні. sscanf() схожа наscanf( ),тільки здійснює вводу з рядка символів. Функції файлового вводу-виводу. Текстові файли з буферизацією ПРОСТІ ПРОГРАМИ ЧИТАННЯ ФАЙЛУ: fopen(), fclose( ), getc() і putc() Перед тем, як виконувати операції в/в у файл, його потрібно відкрити. Відкриття файлу здійснюється функцією fopen( ). Після роботи, файл потрібно закрити. Для цього використовується функція fclose( ). Функції fopen() і fclose( ) працюють із текстовими файлами з «буферизацієй». Під буферизацієй ми розуміємо, що виведені дані, що вводяться й, запам'ятовуються в тимчасовій області пам'яті, називаної буфером. Якщо буфер заповнився, уміст його передається в блок, і процес буферизації починається знову. Одна з основних задачfclose( ) полягає в тому, щоб «звільнити» будь-які частково заповнені буфери, якщо файл закритий. Текстовим є файл, у якім інформація запам'ятовується у вигляді символів у коді ASCII (або аналогічному). Він відрізняється від двійкового файлу, який звичайно використовується для запам'ятовування кодів машинної мови. Функція fopen() має два основні параметри. Перший — ім'я файлу, який слід відкрити. Другий параметр описує, як повинен використовуватися файл. Три основні значення параметру: “r” : файл потрібно вважати “w” : файл потрібно записати “a” : файл потрібно доповнити Для вказівки того, що файл текстовий треба до режиму додати t “rt”, для бінарного файлу -b. Деякі системи надають ще додаткові можливості, але ми будемо дотримуватися цих. Помітимо, що використовувані коди є рядками, а не символьними константами; отже, вони беруться у подвійні лапки. При застосуванні "г" відкривається існуючий файл. При двох інших застосуваннях теж буде відкриватися існуючий файл, але якщо такого файлу ні, він буде створений. Увага: Якщо використовувати "w" для існуючого файлу, то його стара версія стирається. Функція повертає вказівник на відкритий файл:
|
|||
|