КАК ЗАРАБОТАТЬ НА ФОРЕКСЕ
Пятница, 03.05.2024, 10:47
Приветствую Вас Гость | RSS
 
Главная Учимся программировать на языке MQL4-Урок 3 - Типы данных в MQL4.РегистрацияВход
<a href="http://instaforex.com/ru/">Форекс портал</a>
Меню сайта
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
Урок 3 - Типы данных в MQL4


Что такое тип данных?

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

Например, если в памяти хранится число от -2147483648 до 2147483647, в большинстве языков программирования оно будет называться "integer".

Переменные?

Переменные - это всего лишь имена, которые привязаны к кускам памяти, где храняться соответствующие данные.

Чтобы было легче понимать, что происходит, представьте себе, что память - это набор коробок различных размеров. Размер коробки - это эквивалент количества бит, требуемого для хранения данного типа.
  • Чтобы использовать коробку для хранения данных, необходимо присвоить ей имя. Этот процесс называется объявлением.
  • В процессе объявления Вы используете слово, чтобы объяснить компьютеру какого размера коробка Вам нужна. Это слово называется ключевым.
  • Лучше дать имя коробке такое, чтобы потом было легко понять, что в ней лежит.
  • Данные кладутся в коробку путём присвоения данных коробке.
  • Если объявление и присвоение данных происходит в одной строчке, то такой процесс называется инициализацией.
Когда мы создаём переменную, мы говорим компьютеру, что мы хотим, чтобы он присвоил часть памяти определённого размера (в битах) нашей переменной. Поскольку хранение числа, буквы или большого числа занимает разный объём памяти, компьютер спросит, что Вы хотите хранить в этой памяти, и каков размер данных. Для этого и нужны типы данных.

Например, если мы дадим компьютеру следующую строчку кода:

Код:
int MyVaraible=0;
то мы говорим компьютеру, что хотим, чтобы он выделил блок памяти длиной 4 байта под нащу переменную "MyVariable".

В этом примере:

int - это ключевоу слово

int - тип данных integer

int - объявление

MyVariable - имя переменной

=0 - инициализация

О переменных мы узнаем больше в следующих уроках.

В MQL4 присутствубт следующие типы данных:
  • Integer (int)
  • Boolean (bool)
  • Character (Char)
  • String (String)
  • Floating-point number (double)
  • Color (color)
  • Datetime (datetime)
1 - Integer

Integer - это число, которое может начинаться с + или - и состоит из цифр. Это число может лежать в пределах между -2147483648 и 2147483647.

MQL4 может представлять integer в десятичной или шестнадцатиричной системе.

Например, следующие числа - типа integer:

Код:
12, 3, 2134, 0, -230

0x0A, 0x12, 0X12, 0x2f, 0xA3, 0Xa3, 0X7C7
Ключевое слово int используется для создания переменной типа integet.

Например:

Код:
int intInteger = 0;

int intAnotherIntger = -100;

int intHexIntger=0x12;

2 - Boolean

Переменная типа Boolean может принимать лищь 2 значения: true или false (или их численные представления 1 и 0). И она занимает 1 бит (!) памяти.
В MQL4 true, TRUE, True равнозначны и false, FALSE, False - тоже.

Тип Boolean назван так в честь математика George Boole.

Ключевое слово bool используется для создания переменной типа Boolean.

Например:

Код:
bool I = true;

bool bFlag = 1;

bool bBool=FALSE;

3 - Character

Переменная типа Character - это один символ. Точнее,- это один из 256 алфавитных, циферных или специальных символов, заданных таблицой ASCII (American Standard Code for Information Interchange).
Символам присвоены числовые значения в соответствии с расположением в таблице.
Чтобы записать символ, нужно поместить его в одинарные кавычки:

Код:
'a' , '$' , 'Z'
Ключевое слово int используется для создания переменной типа Character.

Например:

Код:
int chrA = 'A';

int chrB = '$';
Некоторые символы, называемые Спец. Символами, не могут напрямую находиться внутри одинарных кавыч, потому что у них зарезервированные значения в языке MQL4.

В таких случаях мы используем escape-последовательности. Это означает, что мы ставим слэш-назад (\) перед символом.

Например:

Код:
int chrA = '\\'; //просто слэш

int chrB = '\n'; //символ новой строки
Список escape-последовательностей MQL4:

Код:
carriage return \r

new line \n

horizontal tab \t

reverse slash \\

single quote \'

double quote \"

hexadecimal ASCII-code \xhh

4 - String

Переменная типа String - это набор символов, заключённых в двойные кавычки.
В памяти эти символы храняться в мыссиве - один за другим, в конце стоит терминирующий нуль NULL. Как и в любом массиве, нумерация начинается с нуля.
Символ NULL - это спец. символ (в таблице ASCII ему соответсвует число 0), используемый для обозначения конца строки.
На рис. 1 схематически изображено, как хранится в памяти строка "hello".


рис. 1 - Символы в массиве

MQL4 ограничивает размер строки 255 символами.
В строке можно использовать любые спец. символы, если перед ними Вы поставите \ .

Ключевое слово string используется для созания переменных типа String.

Например:

Код:
string str1 = "Hello world1, with you coders guru”;

string str2 = "Copyright © 2005, \"Forex-tsd forum\"."; //Notice the use of (") character.

string str3 = "1234567890";

5 - Floating-point number

Floating-point number - число с плавающей запятой - это действительное число.
Например: 3.0, -115.5, 15 и 0.0001.

Число такого типа может принимать значения от 2.2e-308 до 1.8e308.

Ключевое слово double используется для создания переменных типа Floating-point number.

Например:

Код:
double dblNumber1 = 1000000000000000;
double dblNumber3 = 1/4;
double dblNumber3 = 5.75;
6 - Color

Тип данных Color - это специальный тип данных MQL4, которым задаются цвета различных объектов на Вашем графике в терминале MetaTrader.

Переменную типа Color можно задать тремя способами:

1 - Используя название цвета: Для часто используемых цветов (из набора Web-цветов) можно прямо присваивать переменной имя требуемого цвета.

2 - Используя символьное соответствие: Надо написать ключевой символ ( C ), и после него заключённые в одинарные кавычки (') должны идти координаты требуемого цвета в трёхмерном пространстве RGB (красный, зелёный, синий). Эти координаты должны быть в пределах от 0 до 255. Их можно задавать в десятичной или шестнадцатиричной системе.

3 - Используя числовое значение: Каждому цвету из набоора Web-цветов поставлен в соответствии свой код, который можно записывать как десятичной, так и в шестнадцатиричной системе. В шестнадцатиричной системе код записывается проще всего: 0xBBGGRR (BB - синий, GG - зелёный, RR - красный).

Например:

Код:
// символьное соответствие

C'128,128,128' // gray

C'0x00,0x00,0xFF' // blue

// название

Red

Yellow

Black

// числовое значение

0xFFFFFF // white

16777215 // white

0x008000 // green

32768 // green
Ключевое слово color используется для создания переменной типа Color.

Например:

Код:
color clr1= Red;
color clr1= C'128,128,128';
color clr1=32768;

7 - Datetime

Тип данных Datetime - это специальный тип данных MQL4, который используется для хранения даты и времени. Чтобы задать значение переменной типа Datetime, надо написать ключевой символ (D), и после него заключённые в одинарные кавычки (') должна идти требуемая дата в формате год, месяц, день, час, минута, секунда. Переменные этого типа данных могут располагаться внутри временного диапазона от Jan 1, 1970 по Dec 31, 2037.

Например:

Код:
D'2008.01.01 00:00' // Новый год

D'1980.07.19 12:30:27'

D'19.07.1980 12:30:27'

D'19.07.1980 12' //равносильно: D'1980.07.19 12:00:00'

D'01.01.2004' //равносильно: D'01.01.2004 00:00:00'
Ключевое слово datetime используется для создания переменной типа Datetime.

Например:
Код:
datetime dtMyBirthDay= D'1972.10.19 12:00:00'; 
datetime dt1= D'2005.10.22 04:30:00';
Поиск
<a href="http://instaforex.com/ru/">Форекс портал</a>
Copyright MyCorp © 2024
Бесплатный конструктор сайтов - uCoz