Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика 2 ч.docx
Скачиваний:
5
Добавлен:
27.09.2019
Размер:
68.73 Кб
Скачать

1. Если файл открывается для чтения, то он должен существовать, иначе возникнет ошибка!

Чтение данных из файла последовательного доступа выполняется с помощью функции Input и операторов Input # и Line Input #.

Функция Input считывает из файла заданное количество символов и обычно используется для чтения данных, записанных в файл оператором Print #.

Синтаксис

Input(number, #filenumber),

где

number - целое число, которое задает количество считываемых из файла символов;

filenumber - номер файла.

При использовании этой функции следует иметь в виду, что необходимо знать количество считываемых символов. Поэтому предварительно необходимо вычислить длину считываемого файла с помощью функции Fileline.

Оператор Input # используется, когда необходимо прочитать данные, имеющие структуру с разделителями (в качестве разделителей - запятые). Такие файлы получаются при использовании оператора записи Write #.

Синтаксис

Input #filenumber, varlist,

где, filenumber - номер файла,

varlist - список переменных.

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

Для чтения всего содержимого файла необходимо организовать циклическое считывание данных из файла, поскольку в переменные данные считываются этим оператором по строкам.

Оператор Line Input # используется для построчного чтения данных из последовательного файла, обычно записанного оператором Print #.

Синтаксис:

Line Input #filenumber, varname,

где

filenumber - номер файла,

varname - имя переменной.

Оператор посимвольно считывает всю строку данных из файла и помещает ее в строковую переменную. При этом разделителем строк в файле служит стандартный разделитель строк символ возврата каретки CHR(13) или последовательность символов возврата каретки и перевода строки CHR(13)+CHR(10), причем в переменную varname эти разделители не вставляются.

Для того, чтобы прочитать все данные из файла при помощи этого оператора, необходимо организовать цикл чтения данных из файла.

2. Строка — это одномерный массив символов, заканчивающийся нулевым символом.

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

5.Функции выделения подстроки:

Mid (Строка$, Позиция& [, Длина&]) возвращает часть строки Строка$, начинающуюся с позиции Позиция & и имеющую длину Длина&. Если длина не задана, возвращается часть строки от заданной позиции до конца строки. Например:Mid(«Иван Петрович», 6) возвращает «Петрович»; Мid(«Иван Петрович», 6, 3) возвращает «Ива»;

Left (Строка$, Длина&) — например: Left(«Иван Петрович», 4) возвращает «Иван»;

Right (Строка$, Длина&) возвращает правую часть строки Строка$, количество символов в которой определяется значением аргумента Длина&. Например: Right(«Иван Петрович», 8) возвращает «Петрович».

6. Формальные и фактические параметры

Формальные параметры подпрограммы указывают, с какими параметрами следует обращаться к этой программе (количество примеров, их последовательность, типы). Они задаются в заголовке подпрограммы в виде списка формальных параметров, разбитого на группу формальных параметров включаются однотипные параметры одной категории.

Все формальные параметры можно разбить на четыре категории:

параметры значения (эти параметры в основной программе подпрограммой не меняются );

параметры - переменные ( эти параметры подпрограмма может изменить в основной программе );

параметры-константы ( используются только в версии 7.0);

параметры-процедуры и параметры-функции (т.е. процедурного типа).

Для каждого формального параметра следует указать имя и, как правило, тип, а в случае параметра-переменной или параметра-константы - его категорию. Имена параметров могут быть любыми, в том числе и совпадать с именами объектов программы. Необходимо лишь помнить, что в этом случае параметр основной программы с таким именем становится недостурным для непосредственного использования подпрограммой. Тип формального параметра может быть практически любым, однако в заголовке подпрограммы нельзя вводить новый тип. Например, нельзя писатьfunction Max( A: array[ 1..100 ] of real ): real;

Чтобы правильно записать этот заголовок, следует в основной программе ввести тип-массив, а затем использовать его в заголовке:type tArr =array [ 1..100 ] of real;

function Max ( A: tArr ) : real;

При обращении к подпрограмме формальные параметры заменяют на соответствующие фактические вызывающей программой или подпрограммы.

7. При разработке приложения создается проект – коллекция файлов разного формата. В конечном итоге проект компилируется в единый исполняемый модуль приложения с расширением .exe.

Основные компонеты проекта: 1) файл проекта с расширением .vbp, который управляет всеми остальными компонентами, 2) файл с расширением .vbw, являющегося рабочей областью проекта, 3) по одному файлу с расширением .frm для каждой формы, 4) один двоичный файл с расширением .frx для каждой формы, содержащий значения свойств элементов управления – такие файлы недоступны для редактирования и автоматически генерируются для каждого файла .frm В зависимости от типа и сложности проекта, он может также включать (необязательно): 1) файл для каждого модуля класса (.cls), 2) файл для каждого стандартного модуля (.bas), 3) файл ресурсов (.res), 4) файлы дополнительных элементов управления .ocx. Кроме того, во время разработки и в период выполнения также создаются различные файлы: 1) файлы страниц свойств объектов (.pag, .pgx), 2) файл группового проекта (.vbg), 3) файлы пользовательских элементов управления (.ctl, .ctx).

В файле проекта, кроме некоторых установок, хранится также информация о его компонентах и связях между ними. Сами компоненты ничего не знают о других компонентах проекта, поэтому их можно использовать в других проектах.

Для создания проекта используется команда File New Project.

8. Редактор Visual Basic является средой разработки и редактирования программ на языке Visual Basic. Как и все современные средства разработки программного обеспечения, редактор Visual Basic содержит мощные средства для облегчения написания кода, а также средства для поиска и устранения ошибок. Начиная с версии 2000 года, редактор Visual Basic является отдельным приложением, которое имеет свою строку меню и панель инструментов. Кроме того, в его состав входят семь вспомогательных окон, облегчающих управление проектом, навигацию и поиск объектов, их свойств, методов, а также отладку и оптимизацию программных процедур.

Кроме вспомогательных окон, редактор Visual Basic может содержать любое количество открытых окон модулей (или окон кода) (Code Window), которые содержат непосредственно код программы на Visual Basic. При открытии редактора Visual Basic по умолчанию вместе с ним открываются два вспомогательных окна — окно проекта (Project Explorer Windows) и окно свойств (Properties Windows), а также как минимум одно окно модуля (Code Window). Остальные вспомогательные окна доступны через меню Вид (View), соответствующие кнопки панели инструментов и пункты контекстного меню.При отладке могут использоваться три вспомогательных окна — Непосредственной отладки (Immediate Window), Локальных переменных (Locals Window) и Контрольных выражений (Watch Window). Окно непосредственной отладки (Immediate Window), как и другие отладочные окна, используется для проверки значений переменных или выражений. Для этого можно воспользоваться командой Debug.Print <выражение>, вставляя ее в интересующих участках кода. По мере выполнения программы в окне будут отображаться значения заданных выражений (или переменных). Второй вариант — вводить команду Print <выражение> (или ? <выражение>) по мере необходимости непосредственно в окно, когда программа находится в режиме прерывания (Break Mode). После нажатия на клавишу <Enter>, в следующей строчке появится значение заданного выражения. Окно непосредственной отладки, кроме того, можно использовать для задания значения какой-либо переменной или свойства. Для этого используется синтаксис имя_переменной = <выражение>.

9. Логическое выражение в программировании — конструкция языка программирования, результатом вычисления которой является «истина» или «ложь».

В Visual Basic можно выделить пять основных и важных логических операторов: And, Or, Not, Xor и Eqv

Итак, And!

Это, наверное, самый простой и нужный логический оператор среди других.

Help:

Возвращает результат конъюнкции (логического И) для двух выражений.

Синтксис:

результат = выражение1 And выражение2

Следующий оператор не менее простой - Or.

Help:

Выполняет операцию логического ИЛИ (сложения) для двух выражений.

Синтаксис:

результат = выражение1 Or выражение2

Оператор Not.

Help:

Выполняет над выражением операцию логического отрицания.

Синтаксис:

результат = Not выражение

Оператор Xor.

Help:

Выполняет операцию исключающего ИЛИ для двух выражений.

Синтаксис:

[результат =] выражение1 Xor выражение2

Оператор Eqv.

Help:

Используется для проверки логической эквивалентности двух выражений.

Синтаксис:

результат = выражение1 Eqv выражение2

10. Интегрированная среда разработки VB 6 (IDE). Обзор инструментов IDE

Visual Basic 6 содержит графическую среду, в которой можно наглядно конструировать экранные формы и управляющие элементы, используемые в приложениях Windows. Он содержит множество полезных инструментов, облегчающих труд программиста, таких, как проекты, модули, формы, объекты, шаблоны (классы), стандартные и нестандартные управляющие элементы, надстройки, такие, как менеджер баз данных, менеджер формирования отчетов из баз данных и т. п.

Версия VB 6 проектировалась в расчете на Internet. В нее входят элементы проектирования ActiveX, позволяющие создавать класс приложений для Web - исполняемых файлов - универсальных автономных приложений, работающих также и в Internet. Они создаются на VB 6, но доступ к ним осуществляется через обозреватель (Web-браузер) Microsoft Internet Explorer.

В VB 6 используется интегрированная среда разработки (IDE - Integrated Development Environment), созданная по типу Проводника Windows.

При первом запуске VB 6 запускается мастер Project Wizard, и на экране появляется окно New Project (новый проект). В нем можно выбрать один из нескольких типов шаблонов проектов. Окно имеет 3 вкладки: New (новые проекты), Existing (существующие проекты), Recent (недавно использовавшиеся проекты).

На вкладке New открываются шаблоны программ:

- Standard EXE (исполняемый файл, т. е., cкомпилированный exe-файл);

- ActiveX exe (исполняемый файл ActiveX);

- и т. п.

Наша задача — научиться работать во вкладке Standard EXE, т. е., создавать стандартные файлы программ (exe-файлы).

В состав проекта входят:

- формы, которые содержат как элементы управления, так и программный код;

- модули, содержащие только программный код.

При открытии нового проекта появляется окно интегрированной среды разработки (IDE) VB6.

Окно интегрированной среды разработки (IDE) имеет главное меню и панель инструментов. В поле окна IDE могут открываться окна компонентов среды:

- окно конструктора формы;

- окно проекта, в котором, как и в Проводнике Windows, видны формы и модули;

- панель управляющих элементов;

- окно свойств объектов;

- окно программного кода;

- окно макета формы;

- окно просмотра объектов, в котором отражены свойства, события и методы, доступные для выделенного объекта;

- и другие.

Главное меню

Главное меню содержит вкладки, необходимые в процессе работы с формами:

- File (файл);

- Edit (правка);

- View (просмотр) — режимы просмотра различных компонентов и инструментов;

- Project (разработка проекта) — главная для проекта, в ней добавляются и удаляются формы, программные модули, элементы управления и т. п.;

- Format — определение размеров и расположения объектов;

- Debug (отладка программного кода объекта);

- Run (запуск программного кода объекта);

- Query (создание запросов);

- Tools (инструменты) — добавление процедур, задание значений их атрибутов;

- Add-ins — дополнительные инструменты (надстройки), по умолчанию включена Visual Data Manager (инструмент для создания баз данных в VB) и т. п.;

- Windows (открытые окна и варианты их расположения) и т. п.

Стандартная панель инструментов

Дублирует команды главного меню, в неё включаются часто используемые при работе команды.

Вызов стандартной панели: View — Toolbars — Standard. По пути View — Toolbars — … вызываются и другие панели инструментов.

Кнопки стандартной панели:

- добавить проект (Add Standard EXE Project);

- добавить форму (Add Form);

- редактор меню (Menu Editor) - для создания различных меню;

- открыть проект;

- сохранить проект;

- запуск программы (Start);

- остановка программы (Break);

- завершение программы (End);

- окно проекта (Project Explorer);

- окно свойств выделенного объекта (Properties Window);

- окно макета формы (Form Layout Window);

- окно просмотра объектов (Object Browser);

- панель управляющих элементов (Toolbox);

- и т. п.

Удаление и вставка, перемещение команд меню (кнопок) на панелях инструментов осуществляется аналогично настройке панелей инструментов в Word и Excel с помощью вкладки Настройка.

Настройка (Customize): View — Toolbars — Customize - Commands.

или установка курсора в области меню или панели инструментов — правая кнопка — Customize - Commands.

Окно проекта (Project Explorer)

В нем можно получить информацию о различных составляющих проекта: формах, классах, модулях. Оно подобно окну Проводника Windows.

Все объекты, составляющие приложение, объединяются в проект. При сохранении проекта для использования, тестирования, отладки и дополнения файлу описания проекта присваивается расширение .vbp (сокращение от Visual Basic Project). Простейший проект имеет одну форму, т. е., окно, используемое приложением. Кроме форм в окне проекта показываются модули и классы (шаблоны модулей).

Чтобы просмотреть форму, необходимо выделить ее в окне проекта и нажать кнопку меню View - Object, а чтобы просмотреть программный код формы, нужно нажать кнопку View - Code. Более эффективно для вызова формы или окна программного кода пользоваться контекстным меню.

Окно свойств объекта (Properties Window)

Отображаются свойства только выделенных объектов. Объектом может быть любая форма, любой элемент управления, любой элемент графики, слои, диаграммы, страницы, элементы связи и т. п.

Объект можно определить как нечто, состоящее из данных и программного кода, обрабатывающего эти данные. Т. е., в понятие "объект" включаются данные и соответствующий этим данным программный код.

Объект определяется как именованная сущность, характеризующаяся:

- свойствами, т. е. установками, которые можно проверить и изменить;

- методами, т. е. действиями, которые объект может выполнить, если программа попросит его об этом;

- событиями, т. е. возможными для объекта внешними воздействиями, на которые он может ответить заранее предопределенными действиями.

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

Другой способ выделения объекта и просмотра его свойств — выбор объекта в выпадающем списке в верхней части окна свойств.

Изменение свойств может осуществляться в режиме конструирования формы (Design time). Это наиболее удобный способ задания свойств объектов.

Кроме того, значения свойств объектов можно также изменять, если вводить их изменение в код программы, при этом свойства будут меняться оперативно при выполнении программы (Run Time). Этот вариант значительно сложнее, но иногда он оправдан.

Если на форме выделены несколько объектов, то в окне свойств высвечиваются только общие для этих объектов свойства. При этом сама форма выделяться одновременно с расположенными на ней элементами не может.

Виды свойств объектов:

1. Логические свойства — свойства принимающие значения True или False (например, для свойства кнопки Visible значение False: после кнопка в режиме программы не будет видна).

2. Свойства с фиксированным набором значений. Допустимые значения свойства ограничиваются некоторым списком (называемым перечислением). Для выбора значения выполняется щелчок на имени свойства и производится выделение нужного в раскрывающемся списке всех допустимых значений. Например, BorderStyle (стиль рамки):

- 0 — удаляет рамку;

- 1 — Fixed Single — создает тонкую рамку и запрещает произвольное изменение размеров окна;

- 2 — Sizable — применяется по умолчанию, разрешает произвольное изменение окна;

- 3 - Fixed Dialog — не разрешает пользователю изменение размеров диалогового окна (применяется, например, для окна сообщений);

- 4 — Fixed Tool Window — фиксированная панель инструментов;

- 5 - Sizable Tool Window - плавающая панель инструментов.

3. Строковые свойства — текстовые или строки. Два самых распространенных строковых свойства: Name и Caption, которые вводятся с клавиатуры. Для удобства опознания объектов, когда их имена дублируются, в именах используются префиксы. В частности, если Name относится к форме (Form), то обычно в начале имени ставится префикс frm. Name отражает имя формы, используемое для работы приложения, а заголовок (Caption) необходим для пользователя.

4. Шестнадцатиричные свойства, например BackColor (цвет фона). Но код, как правило, не набирают. В раскрывающемся списке свойства открывается палитра (Palette), и цвет можно просто выбрать вместо того, чтобы вводить шестнадцатеричный код. Палитру можно также вызвать в окно, нажав View — Color Palette.

5. Файловые свойства. Их значения представляют собой ссылки на файлы, используемые при работе объекта, например, свойство Icon, определяющее пиктограмму формы в свернутом состоянии, связывает её с выбранным значком.

6. Свойства размера, например свойства Left, Top, Width, Height. Если, например, переместить форму в окне макета, то в окне свойств изменятся значения свойств "Влево" и "Вверх", а если переместить границы формы, то изменятся ширина и высота. Свойства размера любого объекта можно изменять непосредственно в форме.

Окно макета формы (Form Layout)

Это простой, но полезный инструмент. В нем выводится уменьшенное изображение формы, по которому можно представить, как будет выглядеть форма, и где она будет находиться во время выполнения программы.

Окно также помогает оценить, какую часть экрана займет форма во время выполнения приложения. Для проверки действия можно:

- в окне макета перетащить форму в центр;

- нажать Run — Start.

Форма займет соответствующее положение в окне приложения.

Для точного расположения формы в центре экрана нужно встать на форму в окне макета: правая кнопка — Start Position — Center Screen.

Панель управляющих элементов (Toolbox)

Все кнопки (за исключением стрелки-указателя) — это объекты (управляющие элементы), которые можно использовать в формах создаваемых приложений.

Большинство из них — неотъемлемая часть VB — это встроенные или стандартные элементы: кнопки, флажки, текстовые поля и т. п.

Упорядочение панели управляющих элементов:

На панели элементов можно создавать другие вкладки, предназначенные для различных группировок элементов, например, для того, чтобы разделить нестандартные элементы по категориям.

Для создания новой вкладки на панели элементов необходимо:

- щелкнуть правой кнопкой на пустом месте панели элементов;

- выбрать команду Add Tab, ОК.

Чтобы поместить элементы на новую панель, нужно щелкнуть правой кнопкой и выбрать Components, а затем установить флажок на нужном элементе, ОК.

Для удаления элемента с панели управляющих элементов достаточно снять флажок с имени элемента. При этом следует помнить, что стандартные управляющие элементы с Панели элементов удалить нельзя.

Конструктор форм

Окно конструктора форм (Project1) расположено в центре среды разработки.

В нем размещается форма с расположенными на ней элементами управления. Изменение размера окна конструктора форм производится перемещением границ окна.

Изменение размера формы производится с помощью черных квадратов (маркеров размера), расположенных по краям формы.

11. Текстовое поле (TextBox) является основным элементом управления, предназначенным для ввода данных. События

При использовании текстового поля представляют интерес несколько событий. Прежде всего, это событие Change, которое вызывается при изменении содержимого текстового поля. Это событие происходит каждый раз при вводе, удалении или изменении символа. Например, при вводе в текстовое поле слова "Hello" событие Change вызывается пять раз — по одному разу для каждой буквы.

Для анализа введенного в поле текста лучше всего подходит событие Lost Focus. Это событие вызывается после того, как текстовое поле становится неактивным (после передачи фокуса

другому элементу, т.е. когда пользователь закончит ввод). Однако если это поле является единственным элементом управления в форме, оно не может потерять фокус.

Чтобы удалить или инициализировать содержимое текстового окна, используется событие GotFocus. Оно вызывается, когда пользователь "входит" в текстовое окно.

Свойства

Можно воспользоваться и другими свойствами текстового поля, о которых стоит поговорить отдельно. Самым важным является свойство Text. Это свойство содержит отображаемый в поле текст.

Private Sub txtInput_LostFocus()

strText$ = txtInput.Text

End Sub

В данном примере при возникновении события Lost Focus переменной strText присваивается значение txtIn-put. Text, т.е. текст поля.

Элементы управления, которые разрешают ввод символов, имеют свойство Text, а элементы, предназначенные только для отображения текста, — свойство Caption. Текстовое поле подобно маленькому редактору. Чтобы использовать его в таком качестве, достаточно установить свойство MultiLine. Это дает возможность вводить в поле несколько строк.

В многострочном поле для перехода на новую строку можно использовать клавишу [Enter]. Но при этом следует помнить, что для некоторой кнопки, возможно, установлено свойство Default. Поэтому нажатие клавиши [Enter] вызовет срабатывание этой кнопки. В таком случае для перехода на новую строку надежнее использовать комбинацию клавиш [Ctrl+En-ter] или [Shift+Enter].

Если форма не содержит многострочное текстовое поле и кнопку по умолчанию, то нажатие клавиши [Enter] в текстовом поле, имеющем фокус, вызовет звуковой сигнал. Для предотвращения этого напишите следующую процедуру обработки события KeyPress текстового поля: .

Private Sub Text1_KeyPress (KeyAscii As Integer)

If KeyAscii = 13 Then KeyAscii = 0

End Sub

При этом клавиша [Enter] просто игнорируется.

При работе с многострочным текстовым полем можно столкнуться со следующей проблемой: если вводимый текст больше, чем может поместиться в текстовом поле, текст не усекается, но и не отображается полностью. Эта проблема решается установкой свойства ScrollBars. С его помощью можно определить, какую полосу прокрутки будет иметь текстовое поле: горизонтальную, вертикальную или обе. При этом полосы прокрутки функционируют самостоятельно, т.е. не нужно писать дополнительный код.

В текстовом поле, как это обычно делается в среде Windows, можно также выделять текст. Для этого Visual Basic предоставляет следующие три свойства текстового окна. Свойство Sel-Start определяет начальную позицию выделенного текста в символах. Свойство SelLength содержит количество выделенных символов. И, наконец, с помощью свойства SelText можно прочитать или изменить выделенный текст. В следующем примере выделяется текст со 2-го по 6-й символ и заменяется на "Hello".

Textl.SelStart =2

Textl.SelLength = 5

Textl.SelText = "Hello"

Иногда в поле требуется быстро удалить текст или заменить его новым. Для этого выделяется весь текст в поле, как только данное поле получает фокус. Приведенный пример показывает, как это реализовать:

Private Sub txtInput_GotFocus()

txtInput.SelStart = 0

txtInput.SelLength = Len(txtInput.Text)

End Sub

12. Цикл - это одна и та же последовательность команд, повторяемая определенное число раз. Повторяющиеся операторы называются телом цикла. Visual Basic предоставляет возможность использовать два типа циклов. Если число повторений цикла известно заранее или может быть вычислено, то целесообразно использовать оператор цикла For...Next. Если же момент завершения цикла зависит от выполнения некоторого условия, то применяется оператор цикла Do...Loop.

13. Закрытие файлов

Все открытые файлы по окончании работы с ними необходимо закрыть!

Синтаксис оператора закрытия файлов::

Close [FileNamberList]

FileNamberList — список закрываемых файлов, представленных номерами файлов и перечисляемых через запятую.

Если список файлов опущен, то закрываются все открытые файлы.

14. Командная Кнопка - одно из наиболее широко используемых средств управления в Визуал Бейсик. Командные Кнопки используются, чтобы запустить, приостановить (пауза) или закончить отдельные процессы. Командная Кнопка выбирается из набора инструментов и выглядит так:

Командная кнопка на панели инструментов (Image93.gif - 2Kb)

Командная кнопка на форме (Image94.gif - 2Kb)

Свойства

Несколько свойств для Командной Кнопки:

Свойство......................... Описание

Name (Имя).......................используется, чтобы идентифицировать кнопку. Три символа (префикс) для имен кнопки - cmd.

Caption (Заголовок) .........надпись, которая появляется на кнопке.

Font (Шрифт)....................устанавливает размер и тип шрифта заголовка.

Left (Левый)......................расстояние от левого края формы до левого края кнопки.

Top (Верх)........................расстояние от верхнего края формы до верхнего края кнопки.

Width (Ширина)................ширина кнопки.

Height (Высота)...............высота кнопки.

Enabled (Допускается)....определяет, может ли кнопка отвечать на события пользователя (в режиме работы [run]).

Visible (Видимый)............определяет, становится ли кнопка видимой на форме (в режиме работы [run]).

21Понятие события

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

Свойства события

Сообщение о событии формируется в виде объекта, т.е. контейнера для хранения информации.

В объектной модели имеется объект event, являющийся подобъектом объекта окна window. Он содержит информацию о том, какое событие произошло, какой элемент должен на него реагировать, и ряд других характеристик.

22Пошаговое выполнение программ

Интегрированный отладчик предполагает возможность пошагового выполнения программы (трассировки), когда программа выполняется построчно с остановом после выполнения операторов каждой очередной строки текста программы, содержащей исполняемые операторы.

Трассировка возможна тремя способами: с заходом в выполняемые подпрограммы, без захода в них и до ближайшего исполняемого оператора.

Редактор VBA позволяет выполнять пошаговую отладку программы. Ее можно выполнить либо при помощи панели инструментов Отладка (Debug), либо меню Отладка (Debug), которое включает команды и соответствующие комбинации клавиш (рис. 12.9). Если панель инструментов Отладка (Debug) не отображена на экране, то ее можно отобразить, выполнив команду Вид, Панели инструментов, Отладка (View, Toolbars, Debug).

23Оператор построчного чтения файлов

Оператор Line Input # используется для построчного чтения данных из последовательного файла, обычно записанного оператором Print #.

Синтаксис:

Line Input #filenumber, varname,

где

filenumber - номер файла,

Varname - имя переменной.

Оператор посимвольно считывает всю строку данных из файла и помещает ее в строковую переменную. При этом разделителем строк в файле служит стандартный разделитель строк символ возврата каретки CHR(13) или последовательность символов возврата каретки и перевода строки CHR(13)+CHR(10), причем в переменную varname эти разделители не вставляются.

Для того, чтобы прочитать все данные из файла при помощи этого оператора, необходимо организовать цикл чтения данных из файла.

25Понятие локальных и глобальных переменных

Каждая переменная имеет свою область видимости, то есть такую область, в которой можно работать с переменной. За пределами этой области, о данной переменной ничего известно не будет, а значит и использовать её нельзя. Итак, переменная находится в области видимости, если к ней можно получить доступ.

Существуют локальные и глобальные переменные. Так вот, переменные, объявленные внутри функции, называются локальными. Локальные переменные имеют свои области видимости, этими областями являются функции, в которых объявлены переменные. Таким образом, в разных функциях можно использовать переменные с одинаковыми именами, что в свою очередь очень удобно. Разделение переменных на глобальные и локальные соответствует одному из главных правил программирования, а именно – принципу наименьших привилегий. То есть, переменные, объявленные внутри одной функции, должны быть доступны только для этой функции и ни чему другому, в конце концов, они создавались именно для этой функции. Глобальные переменные объявляются вне тела какой-либо функции, и поэтому область видимости таких переменных распространяется на всю программу. Обычно глобальные переменные объявляются перед главной функцией, но можно объявлять и после функции main(), но тогда данная переменная не будет доступна в функции main().