69753

Перетворення типів

Домашняя работа

Информатика, кибернетика и программирование

Однак Турбо Паскаль допускає в певних межах такі перетворення які треба задавати в явному вигляді. Є три способи задавати перетворення типів: неявні перетворення використання стандартних функцій і явні перетворення.

Украинкский

2014-10-09

28.5 KB

1 чел.

Самостійне вивчення

Тема 11: Перетворення типів

У мові Паскаль типи даних задають статично, і загалом не допустимо їх змінювати в процесі виконання програми. Однак Турбо Паскаль допускає в певних межах такі перетворення, які треба задавати в явному вигляді.

Є три способи задавати перетворення типів: неявні перетворення, використання стандартних функцій і явні перетворення. Перші два визначені в авторській версії мови Паскаль, а третій - у Турбо Паскалі.

Спосіб неявного перетворення допустимий тільки в операції присвоєння, коли, наприклад, дійсній змінній присвоюється ціле. В другому способі для перетворення типів використовують такі функції: odd, trunc, round, ord, chr. Правила їх застосування розглянуті під час вивчення відповідних типів даних, з якими вони оперують.

Явне перетворення типів у Турбо Паскалі використовує спеціальну конструкцію. Загальний вигляд перетворення типу такий:

<тип>(<змінна>)

Тобто для надання змінній іншого типу потрібно взяти її в дужки, зазначити перед дужками ім'я нового типу. Розглянемо цей спосіб перетворення типу змінної на прикладі. Нехай деяка змінна описана, як

var і: byte;

Присвоєння їй значення

і:='I'

призведе до помилки - невідповідності типів. Таке присвоєння можна виконати тільки за допомогою конструкції явного перетворення типів:

char(i):='I'.

Цю конструкцію можна використовувати в усіх позиціях, де є змінна. Треба враховувати, що розмір змінної (тобто кількість байтів для її розміщення) повинен збігатися з розміром типу, ім'я якого зазначене перед дужками.

Аналогічно до перетворення типу змінної можна використовувати перетворення типу виразу. Вираз, записаний у круглих дужках, зводиться до типу, ідентифікатор якого зазначений перед дужками. Тип виразу в дужках та ідентифікатор типу перед дужками повинні бути або дискретними, або вказівними типами. Якщо один дискретний тип зводиться до іншого, то таке перетворення може призвести до урізання або збільшення ємності пам'яті порівняно з початковою. У цьому випадку може бути спотворення значення виразу.

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

Вказівні типи вважають різними відповідно до загальних правил, хоча значення вказівних змінних визначають адреси в оперативній пам'яті. Зокрема, типи, описані як

type

р=^геаl;

q=^integer;

визначають різні множини значень, і змінні

var

s:p;

j:q;

не можуть передавати одна одній значення, наприклад, шляхом присвоєння. Якщо ж

var

s, j: р;

то можна записати s:=j.

Для вказівних типів допустимі конструкції явного перетворення. Наприклад, задано такі описи:

type rac=record

re, im: real

end;

rrac=^rac;

LL=^longint;

var

v1: rrac;

v2: LL;

Тут v1, v2 є вказівниками на значення різних типів. Однак конструкція перетворення типу дасть змогу трактувати їх як вказівники на однаковий тип:

rrac(v2)^.re:=5.7; LL(v1)^:=729364.


 

А также другие работы, которые могут Вас заинтересовать

15455. Причини та наслідки занепаду Київської Руcі 32 KB
  Причини та наслідки занепаду Київської Руcі. XIIXIII століття на Русі увійшли в історію як період феодальної роздробленості. По смерті великого князя київського Мстислава сина Володимира Мономаха Київська Русь розпадається на багато князівств і земель. Поза сум...
15456. Формування Галицько-Волинського князівства. Суспільні відносини в державі 39.5 KB
  Формування ГалицькоВолинського князівства. Суспільні відносини в державі. Серед руських князівств найбільшими були РостовоСуздальське ПолоцькоМінське і ГалицькоВолинське князівство. Київ став стольним містом Київської землі яка займала територію Середнього...
15457. Діяльність князів Романа і Данила. Розквіт Галицько-Волинського князівства 31.5 KB
  Діяльність князів Романа і Данила. Розквіт ГалицькоВолинського князівства. Обєднання Галичини й Волині Правління Романа Мстиславича Скориставшись смертю у 1199 р. останнього представника династії Ростиславичів Володимира Ярославича Роман Мстиславич спи...
15458. Зовнішня політика та значення Галицько-Волинської держави 40.5 KB
  Зовнішня політика та значення ГалицькоВолинської держави. По смерті Ярослава Мудрого з початком феодальної роздробленості Галицьке князівство відокремилося від Києва. Першими галицькими князями були нащадки онуків Ярослава Мудрого Ростиславичі а на Волині Мстисла...
15459. Шляхи та причини входження українських земель до Великого князівства Литовського, мовний та культурно-релігійний склад держави 40.5 KB
  Шляхи та причини входження українських земель до Великого князівства Литовського мовний та культурнорелігійний склад держави. В 40х роках ХІV ст. українські землі зазнали розчленування. Після війни 13511352 рр. між Польщею і Литвою Галичина залишилась під владою Польщі а Бе...
15460. Кревська унія 37.5 KB
  Кревська унія. У XIV ст. українські землі роздроблені на окремі князівства й ослаблені зопотоординським ігом підпали під владу кількох феодальних держав. Після смерті 1340 р. галицьковолинського князя Юрія II Польща й Угорщина напали на Галичину яка внаслідок довгої та
15461. Українські землі в складі Речі Посполитої. Люблінська унія та стан справ в українських землях після унії 35 KB
  Українські землі в складі Речі Посполитої. Люблінська унія та стан справ в українських землях після унії. Польські феодали почали наступ на українські землі відразу після монголотатарської навали. Особливо активізувався цей процес у другій половині XVI першій чверт...
15462. Загарбання турками і татарами Південної України і їх наслідки на інші українські землі (друга половина 15 ст.) 27 KB
  Загарбання турками і татарами Південної України і їх наслідки на інші українські землі друга половина 15 ст. Середина XIV ст. стала початком розпаду Золотої Орди. Нескінченні чвари та суперечки суттєво ослабили центральну владу посилили відценіроеі тенденції в Орді що ...
15463. Виникнення і початкова історія українського козацтва 39 KB
  Виникнення і початкова історія українського козацтва. Головною причиною виникнення козацтва на українських землях став дедалі зростаючий соціальний національний та релігійний гніт українського народу. На захист його прав стало козацтво. Козацтво в Україні набуло ш...