АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Вопрос. Указатели

Читайте также:
  1. Внешняя политика Екатерины II. Во внешней политике можно выделить следующие главные задачи: обеспечение выхода к Черному морю и польский вопрос.
  2. Вопрос. Безработица: причины, формы, измерение, последствия.
  3. Вопрос. Высшее должностное лицо субъекта РФ: правовой статус, порядок утверждения, компетенция, ответственность.
  4. Вопрос. Гражданские (личные) права и свободы человека и гражданина в РФ: понятие, особенности, виды, правовое регулирование.
  5. Вопрос. Законодательные (представительные) органы государственной власти субъектов РФ: структура, компетенция, правовые акты.
  6. Вопрос. Институт Уполномоченного по правам человека в РФ.
  7. Вопрос. Интеграционные группировки и аналитические группы с участием России: характеристика деятельности.
  8. вопрос. Инфляция: понятия, виды, последствия.
  9. Вопрос. Исполнительные органы государственной власти субъекта РФ: система, порядок формирования, структура, компетенция, правовые акты.
  10. Вопрос. Конкурентоспособность россии в рамках брикс.
  11. Вопрос. Конституционная реформа в России в конце 80 – начале 90-х годов 20 века. Современные перспективы конституционной реформы в России.
  12. Вопрос. Конституционно-правовой статус кандидатов.

 

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

 

Var P: pointer;

IP: ^integer;

P:= IP - верно. Но не наоборот.

 

Присвоение значение происходит:

1) оператором <указатель>:= @<идентификатор>

2) <указатель>:= <адрес выражения>

3) В результате операций выделения памяти.

 

Операции:

1) После Q:=R, Q укажет туда же, куда и R

2) После Q^:=R^ на место одной переменной, указывающей на третью, заслана другая.

3) После Q^.I:=R^.I на место целого значения заслано другое, после указателя не изменилось.

4) После Q^.P:=R^.P - на место ссылки на компонент 1 заслана ссылка на компонент 2.

 

*****

 

Вопрос.

 

Выделение памяти без инициализации:

procedure GetMem(Var P: pointer; size; integer);

 

Освобождение памяти

procedure FreeMem

 

Изменение размера блока памяти

procedure ReallocMem

 

Выделение памяти с инициализацией

function AllocMem (size: cardinal): Pointer;

 

*****

 

Вопрос.

 

Подпрограмма состоит из трёх частей:

1) заголовок 2) локальное описание 3) тело

 

1) Заголовок. Procedure/Function

Список параметров в круглых скобках через запятую.

 

function compare(A1, A2: byte; str: string): real;

 

Виды параметров:

1) константы 2) результаты (out) 3) без типов

 

Вложенные подпрограммы.

К ним можно обращаться только из тела родительской подпрограммы.

Тело подпрограммы содержится между begin/end.

 

*****

 

Вопрос. Процедурные типы данных.

 

Компилятор превращает процедуру подобно обычным оператором в набор машинных инструкций.

Пример записи:

Proc2 = procedure(var X,Y: integer);

var P1: proc2;

 

Процедурная переменная занимает 4 байта.

Используются так же как:

1) выражения

2) Как оператор

3) Компонент более сложной

 

Процедурные типы указывают какой тип программы (procedure/function) можно

использовать в качестве параметра и с каким параметром будут эти подпрограммы.

 

Ещё пример:

Func1:= function(X: real): real;

 

Процедурные типы данных нужны чтобы передать ссылку на процедуру как параметр.

 

 

*****

 

Вопрос. If, case.

 

1) Расписать как работает if then. Это очевидно.

2) Расписать как работает if then else.

 

Вложенные. Простейший пример.

if a>b then

if a>e then c:=1 else c:=2

 

Оператор case.

 

Case - условие выбора.

case <выражение> of

условие 1: действие 1

условие 2: действие 2

...

end; (можно сюда совать else)

 

Так же case можно использовать в записях.

 

*****

 

Вопрос. Операторы циклов в Паскале.

 

Используются для обработки больших объёмов однородной информации.

2 части: заголовок и тело.

 

for i:=... to... do

Счётчик должен быть заранее объявлен.

end;

 

Описать процесс работы.

 

Рассказать про While... do.

 

*****

 

Вопрос. Работа с txt файлами.

 

Тип переменной: TextFile.

 

Допустимые действия с текстовыми файлами:

AssignFile(F, Name) - связать имя файла с текстовой переменной F

Reset(F) - открыть файл на чтение

Rewrite(F) - октрыть файл на запись. Всё старое сотрётся, будет создавать его с нуля.

Append(F) - открыть для дописывания в конец файла.

Write([F],...) - запись.

Read ([F],...) - чтение.

-> Для двух предыдущих ln обеспечит построчную работу.

CloseFile(F) - закрыть файл.

While not EOLN(S) do begin - заголовок цикла построчной работы.

 

*****

 


1 | 2 | 3 | 4 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.)