Главная страница
Навигация по странице:

  • Basic Различается ли запись литералов типа string

  • BLUE

  • RED

  • BROWN

  • DARKGRAY

  • LIGHTGREEN

  • LIGHTMAGENTA

  • Лекции. Основные понятия и определения


    Скачать 1.94 Mb.
    НазваниеОсновные понятия и определения
    Дата27.03.2018
    Размер1.94 Mb.
    Формат файлаdocx
    Имя файлаЛекции.docx
    ТипКонтрольные вопросы
    #39570
    страница47 из 58
    1   ...   43   44   45   46   47   48   49   50   ...   58

    Вопросы для самопроверки и контроля

    Вопросы для самопроверки

    1. Что означают операторы * и & при работе с указателями?

    2. Что означает запись *(p + i), где p – указатель?

    3. Есть ли понятие указатель в языке Basic?

    4. Различается ли запись литералов типа string в языках Basic и C?

    5. Укажите средство для сравнения строк в языке C.

    6. Что делает функция gets?

    7. Укажите средства для сцепления строк в языках C и Basic.

    8. Для чего служит оператор delete?

    9. Дайте определение рекурсивной процедуры.

    10. С помощью какой структуры данных реализуется рекурсия?
    Контрольные вопросы

    1. Можно ли менять начальный адрес массива во время выполнения программы?

    2. Эквивалентны ли записи a[ i ] и *(a+i), если a – имя массива?

    3. В каком из изучаемых языков отсутствуют переменные предопределенного типа string?

    4. Укажите средство для сравнения строк в языке Basic.

    5. Можно ли задать значение одной строки другой в языке C оператором присваивания?

    6. Чем отличаются результаты выполнения функций lset и rset?

    7. Чем отличаются записи delete и delete [ ]?

    8. Как освобождается память, выделенная в "куче"?

    9. Что такое стек?

    10. Укажите способ "потери" выделенной в "куче" памяти.



    16. РАБОТА С ЭКРАHОМ


    В этом разделе излагаются средства языка C, позволяющие расширить изложенные ранее возможности консольных приложений в части работы с экраном в текстовом режиме.

    Для простоты изложения будем считать, что окно консоли имеет 25 строк и 80 позиций в строке. Всего 2000 ячеек.

    Замечание. Как задать указанные размеры окна консоли, можно прочесть в Приложении 1 «Среда разработки MinGW C/C++».

    Каждая ячейка имеет байт символа и байт атрибута. Символ выводится на экран, а атрибут показывает, как он представлен на экране (цвет символа и фона).

    Координаты ячейки или элемента экрана задаются парой чисел: № позиции в строке, № строки.

    Координаты верхнего левого угла экрана в текстовом режиме: 1, 1.

    Окно – это прямоугольный участок, определенный на экране при работе в текстовом режиме. Во время исполнения вывод программы ограничен активным окном, остальной экран неизменен. По умолчанию окном является весь экран от ячейки с координатами (1, 1) до ячейки с координатами (80, 25). Для работы с экраном используются видеофункции, прототипы которых находятся в заголовочном файле coniow.h. Большинство видеофункций работают в относительных координатах в пределах активного окна. Координаты отсчитываются относительно координат левого верхнего угла окна.

    Информация для каждой ячейки занимает в памяти 2 байта: первый содержит значение выводимого символа, второй – атрибут. Атрибут определяет цвет выводимого символа (foreground) и цвет фона ячейки (background).

    Для заданий цвета используют символические константы, определенные в файле coniow.h.

    BLACK 0 черный

    BLUE 1 синий

    GREEN 2 зеленый

    CYAN 3 бежевый цвета символов и фона

    RED 4 красный

    MAGENTA 5 сиреневый

    BROWN 6 коричневый

    LIGHTGRAY 7 светлосерый

    DARKGRAY 8 темносерый

    LIGHTBLUE 9 голубой

    LIGHTGREEN 10 светлозеленый

    LIGHTCYAN 11 светлобежевый

    LIGHTRED 12 светлокрасный только цвета символов

    LIGHTMAGENTA 13 светлосиреневый

    YELLOW 14 желтый

    WHITE 15 белый

    Различают 4 группы видеофункций.
    1   ...   43   44   45   46   47   48   49   50   ...   58


    написать администратору сайта