КОМПЬЮТЕРНАЯ ЛИТЕРАТУРА - Турбо С: руководство пользователя. Часть 2 - Стр. 10

Индекс материала
Турбо С: руководство пользователя. Часть 2
Стр. 2
Стр. 3
Стр. 4
Стр. 5
Стр. 6
Стр. 7
Стр. 8
Стр. 9
Стр. 10
Стр. 11
Стр. 12
Стр. 13
Стр. 14
Стр. 15
Стр. 16
Стр. 17
Стр. 18
Стр. 19
Стр. 20
Стр. 21
Стр. 22
Стр. 23
Стр. 24
Стр. 25
Стр. 26
Стр. 27
Стр. 28
Стр. 29
Стр. 30
Стр. 31
Стр. 32
Стр. 33
Стр. 34
Стр. 35
Стр. 36
Стр. 37
Стр. 38
Стр. 39
Стр. 40
Стр. 41
Стр. 42
Стр. 43
Стр. 44
Стр. 45
Стр. 46
Стр. 47
Стр. 48
Стр. 49
Стр. 50
Стр. 51
Стр. 52
Стр. 53
Стр. 54
Стр. 55
Стр. 56
Все страницы
     рабатывающих ошибки). Некоторые из них безаргументные и возвраща-
     ют единственное число,  представляющее собой запрашиваемую инфор-
     мацию;  другие  принимают указатель на структуру,  определенную в
     graphics.h и заполняют эту структуру соответствующей информацией,
     ничего при этом не возвращая.

          Функции запроса состояния, попадающие в категорию управления
     графической   системой   -   это   getgraphmode,   getmaxmode   и
     getmoderange. Первая возвращает целое число, представляющее собой
     информацию о текущем графическои драйвере и режиме, вторая - пре-
     дельный режим для данного драйвера,  а третья - диапазон режимов,
     поддерживаемых данным графическим драйвером.  Функции  getmaxx  и
     getmaxy  возвращают  максимальные  координаты экрана для текущего
     графического режима.

          Функции запроса состояния при рисовании и закрашивании - это
     getarccoords,  getaspectratio,  getfillpattern, getfillsettings и
     getlinesettings.  getarccoords заполняет  структуру  координатами
     последнего обращения к arc или ellipse; getaspectratio сообщает о
     коэффициенте сжатия для текущего режима, который позволяет графи-
     ческой  системе вычерчивать правильные окружности. getfillpattern

                         - 77,78 -

     возвращает текущий пользовательский шаблон.  getfillsettings  за-
     полняет   структуру   информацией  о  текущем  шаблоне  и  цвете.
     getlinesettings заполняет структуру информацией  о  текущих  сти-
     ле(сплошная, пунктирная и т.д.), толщине (нормальная или тонкая),
     и шаблоне линии.

          В категорию функций управления экраном и графическими окнами
     попадают getviewsettings,  getx, gety и getpixel. Задав графичес-
     кое окно,  вы можете узнать его абсолютные координаты и состояние
     буферизации  при помощи вызова getviewsettings;  функция заполнит
     структуру необходимой информацией. getx и gety возвращают коорди-
     наты текущей позиции относительно окна.  getpixel возвращает цвет
     заданной точки растра.

          Категория функций вывода текста в графическом режиме  содер-
     жит     одну    всеобъемлющую    функцию    запроса    состояния:
     gettextsettings.  Эта функция заполняет структуру  информацией  о
     текущем символьном шрифте, направлении вывода текста(горизонталь-
     ное или вертикальное снизу вверх), коэффициенте сжатия символов и
     выравнивании  строк  текста(как горизонтальном,  так и вертикаль-
     ном).



          Категория функций управления  цветом  включает  три  функции
     запроса состояния. Функция getbkcolor возвращает текущий цвет фо-
     на, getcolor - текущий цвет рисования. Функция getpalette записы-
     вает  в  структуру  размер текущей палитры рисования и содержимое
     палитры.  getmaxcolor возвращает максимальное допустимое значение
     точки  растра  для  текущего графического драйвера и режима (т.е.
     размер палитры минус единица).

          И наконец, функции getmodename и getdrivename возвращают со-
     ответственно имена данного режима драйвера и текущего графическо-
     го драйвера.











                         - 79,80 -

                             Г Л А В А  9
                             ------------

          ЗАМЕЧАНИЯ ДЛЯ ПРОГРАММИСТОВ, РАБОТАЮЩИХ НА ТУРБО ПАСКАЛЕ.
     -----------------------------------------------------------------

          Перед тем,  как продолжить свое знакомство с Турбо Си, восс-
     тановите в памяти главы 6 и 7. Вспомните, как Си определяет базо-
     вые элементы программирования. В этой главе мы рассмотрим некото-
     рые из   основных  понятий  Си,  однако в главах 6 и 7 есть много
     деталей, которых вы здесь не найдете.

          Паскаль является достаточно последовательным  и  структурным
     языком, в  то время как Си - довольно свободный и гибкий. Паскаль
     заботится о вас лучше,  чем Си и таким образом больше подходит  в
     качестве языка, используемого для обучения основам программирова-
     ния.

          Турбо Си и Турбо  Паскаль  -  находятся  где-то  в  середине
     спектра языков Си - Паскаль.  Турбо Си добавляет некоторые струк-
     туры к Си, а Турбо Паскаль - некоторую гибкость Паскалю.



          Эта глава не предназначена быть исчерпывающим обсуждением Си

            }

          Из всех функций,  которые вы объявляете,  только одна должна
     иметь имя main. Это и есть главный модуль вашей программы. Други-
     ми словами, когда ваша программа начинает выполняться, вызывается
     функция main,    а она может включать в свою очередь вызов других
     функций. Любая  Си программа состоит только из функций.   Однако,
     некоторые функции   имеют тип void и не возвращают значений; так,

                         - 83,84 -


     что они аналогичны процедурам Паскаля. Также (в отличие от Паска-
     ля) вы   можете просто игнорировать любые значения,  возвращаемые
     функциями.



















          Пример
     ----------------------------------------------------------------

          Представлены две программы (одна написана на Турбо  Паскале,
     другая на Турбо Си),  иллюстрирующие сходство и различие между их
     структурами программ:

           Турбо Паскаль                              Турбо Си
     ________________________________________________________________