Лекція 15. Керування буферізацією

3. Текстовий та двійковий режим обміну

Можна відкривати потік у текстовому або двійковому режимі. Але ці режими мають певні особливості.

У текстовому режимі при введенні комбінація символів "повернути каретку - перевести строку" (\015 \012) перетвориться в один символ - перевести рядок. При висновку символ "перевести строку" перетвориться у два: \015, \012. Крім того, комбінація клавіш Ctrl+z (0х1а) сприймається як кінець файлу при висновку.

У двійковому режимі перетворення символів "ПК - ПС" не здійснюється.

Режим обміну з потоком можна змінювати після його відкриття. Для цього призначена функція нижнього рівня setmode. Як відзначалося на рівні потоків функції використовують покажчик потоку.

На нижньому рівні використовується інше поняття - дескриптор файлу (handle). Це є ціле число, яке зв'язується з файлом і використовується для посилань на даний файл. Так стандартні потоки stdin, stdout, stderr, stdaux, stdprn мають відповідні дескриптори 0,1,2,3,4.

 int setmode (int handle, unsigned mode);( якщо функція повертає 0 - нормально, інакше –1)

 handle – дескриптор файла, mode – режим.

Режим задається двома константами в файле <fcntl.hO_BINARY    двійковий

O_TEXT           текстовий.

Доступність

Шрифти Шрифти

Розмір шрифта Розмір шрифта

1

Колір тексту Колір тексту

Колір тла Колір тла

Кернінг шрифтів Кернінг шрифтів

Видимість картинок Видимість картинок

Інтервал між літерами Інтервал між літерами

0

Висота рядка Висота рядка

1.2

Виділити посилання Виділити посилання

Вирівнювання тексту Вирівнювання тексту

Ширина абзацу Ширина абзацу

0