Файл: Понятие переменной в программировании. Виды и типы переменных в разных языках программирования..pdf
Добавлен: 30.06.2023
Просмотров: 71
Скачиваний: 2
- Int
Целые числа переменные в C++ обозначают типом int. Из-за того, что INT это целые числа при различных операциях с числами очень часто возникают ошибки.
Переменные типа int имеет ограниченный диапазон возможных ее значений. Максимальным значением обычной целочисленной переменной является число 2 147 483 647, минимальным — -2 147 483 648, т.е. общий диапазон —около 4 млрд. чисел.
- Float
Как известно переменные типа int делают невозможным их использование приложениями. Но C++ умеет работать и с действительными числами, которые могут иметь ненулевую дробную часть. Используя действительные числа, можно избежать большинства проблем. Заметьте, что десятичные числа могут иметь ненулевую дробную часть, а могут и не иметь, оставаясь действительными.
В C++ число 1.0 является таким же действительным числом, как и 1.5. Эквивалентным им целым числом является просто 1.
В C++ действительные числа определены как числа с плавающей точкой.
Действительные переменные объявляются так же, как и переменные
Тип данных float тоже ограничен, диапазон чисел намного обширнее диапазона целочисленных переменных. Максимальное значение переменной типа float приблизительно равно 1 с 38 нулями.
Представляя переменные в стандартном виде, C++ учитывает после десятичной точки только первые шесть разрядов, а остальные округляются. Поэтому действительная переменная может хранить значение 111 000 000 без потери точности из-за округления, а значение 111 234 532 приведет к ошибке округления.
- Double
В случае двойной точности, задаваемой с помощью ключевого слова double, для хранения значений используется 64 бита. Все трансцендентные математические функции, такие, как sin, cos, sqrt, возвращают результат типа double.
- Long
Тип long предназначен для представления 64-битовых чисел со знаком. Его диапазон допустимых значений достаточно велик даже для таких задач, как подсчет числа атомов во вселенной.
-
Short
Short — это знаковый 16-битовый тип. Его диапазон — от -32768 до 32767. Это, вероятно, наиболее редко используемый в Java тип, поскольку он определен, как тип, в котором старший байт стоит первым. - Char
Тип данных char - это целочисленный тип данных, который используется для представления символов. То есть, каждому символу соответствует определённое число. Тип данных char также ещё называют символьным типом данных, так как графическое представление символов в С++ возможно благодаря char. Для представления символов в C++ типу данных char отводится один байт, в одном байте — 8 бит, тогда возведем двойку в степень 8 и получим значение 256 — количество символов, которое можно закодировать. Таким образом, используя тип данных char можно отобразить любой из 256 символов. Все закодированные символы представлены в таблице ASCII.
- Enum
Enum - это тип перечисления. В enum записываются константы и каждой новой константе присваивается порядковый номер. Используется в первую очередь для улучшения читаемости кода.
- Bool
Тип данных bool - логический тип данных. Bool используется исключительно для хранения результатов логических выражений. У логического выражения может быть один из двух результатов true или false. True - если логическое выражение истинно, false - если логическое выражение ложно.
2.3. Типы переменных в PHP
PHP поддерживает восемь простых типов данных (переменных):
Четыре скалярных типа:
- boolean (двоичные данные)
- integer (целые числа)
- float (числа с плавающей точкой или 'double')
- string (строки)
Два смешанных типа:
- array (массивы)
- object (объекты)
Два специальных типа:
- resource (ресурсы)
- NULL ("пустой" тип)
Существуют также несколько псевдотипов:
- mixed (смешанный)
- number (числовой)
- callback (обратного вызова)
- Boolean (двоичные данные)
Это простейший тип. Также как и С++ и Pascal Он выражает истинность значения - это может быть либо TRUE, либо FALSE. Булев тип был введен в PHP 4.
Чтобы определить булев тип, используйте ключевое слово TRUE или FALSE. Оба регистро-независимы.
Обычно используется некий оператор, который возвращает логическое выражение, а затем предает его управляющей конструкции.
- Integer (целые числа)
Целые числа, обычно длиной 32 бита (от –2 147 483 648 до 2 147 483 647).
Целые могут быть указаны в десятичной, шестнадцатеричной или восьмеричной системе счисления, по желанию с предшествующим знаком (- или +).
Если вы используете восьмеричную систему счисления, вы должны предварить число 0 (нулем), для использования шестнадцатеричной системы нужно поставить перед числом 0x.
- Float (числа с плавающей точкой или 'double')
Double - вещественное число довольно большой точности (ее должно хватить для подавляющего большинства математических вычислений).
- String (строки)
Строка в PHP - это набор символов любой длины. В отличие от Си, строки могут содержать в себе также и нулевые символы, что никак не повлияет на программу. Иными словами, строки можно использовать для хранения бинарных данных. Длина строки ограничена только размером свободой оперативной памяти.
Строка легко может быть обработана при помощи стандартных функций, можно также непосредственно обратиться к любому ее символу.
- Array (массивы)
Массив в PHP - это упорядоченный набор данных, в котором установлено
соответствие между значением и ключом.
Индекс (ключ) служит для однозначной идентификации элемента внутри массива. В одном массиве не может быть двух элементов с одинаковыми индексами.
PHP позволяет создавать массивы любой сложности. Рассмотрим некоторые из них:
- Простой массив (список)
Массивы, индексами которых являются числа, начинающиеся с нуля.
- Ассоциативные массивы
В PHP индексом массива может быть не только число, но и строка. Причем на строку не накладываются ограничения: она может содержать пробелы, специальные символы и быть любой длины.
Массивы, индексами которых являются строки, называются ассоциативными массивами. Индексы ассоциативных массивов называются ключами.
- Многомерные массивы
Для создания массивов в PHP существует специальная инструкция array(). Ее удобно использовать для создания многомерных массивов. Многомерные массивы похожи на записи в языке Pascal или структуры в языке C.
- Object (объекты)
Объект является одним из базовых понятий объектно-ориентированного программирования. Внутренняя структура объекта похожа на хэш, за исключением того, что для доступа к отдельным элементам и функциям используется оператор ->, а не квадратные скобки.
Для инициализации объекта используется выражение new, создающее в переменной экземпляр объекта.
- Resource (ресурсы)
Ресурс - это специальная переменная, содержащая ссылку на внешний ресурс. Ресурсы создаются и используются специальными функциями.
- NULL ("пустой" тип)
Специальное значение NULL говорит о том, что эта переменная не имеет значения. NULL - это единственно возможное значение типа NULL (пустой тип).
Переменная считается NULL если:
ей была присвоена константа NULL;
ей еще не было присвоено какое-либо значение;
она была удалена с помощью unset().
- Mixed (смешанный)
mixed говорит о том, что параметр может принимать множество (но не обязательно все) типов.
gettype(), например, принимает все типы PHP, тогда как str_replace() принимает строки и массивы.
- Number (числовой)
number говорит о том, что параметр может быть либо integer, либо float.
- Callback (обратного вызова)
PHP-функция передается просто как строка ее имени. Вы можете передать любую встроенную или определенную пользователем функцию за исключением array(), echo(), empty(), eval(), exit(), isset(), list(), print() и unset()
3. Объявление переменных
В разных языках программирования объявление переменных несколько отличается, рассмотрим как объявляются переменные в языке Си
3.1. Объявление простой переменной
Синтаксис:
<спецификация типа> <идентификатор> [,<идентификатор>…];
Объявление простой переменной определяет имя переменной и ее тип. Имя переменной задается <идентификатором>. <Спецификация типа> задает тип переменной. Тип может быть базовым типом, либо типом структура, либо типом объединение. Если спецификация типа опущена, предполагается тип int.
Можно объявить несколько переменных в одном объявлении, задавая список <идентификаторов>, разделенных запятыми. Каждый <идентификатор> в списке именует отдельную переменную. Все переменные, заданные в таком объявлении, имеют одинаковый тип.
3.2. Объявление переменной перечислимого типа
Синтаксис:
enum [<тег>]{<список-перечисления>} <описатель>[,<описатель>…];
enum <тег> <идентификатор> [<идентификатор>…];
Объявление переменной перечислимого типа задает имя переменной и определяет список именованных констант, называемый списком перечисления. Каждому элементу списка перечисления ставится в соответствие целое число. Переменная перечислимого типа может принимать только значения из своего списка перечисления. Элементы списка имеют тип int. Поэтому переменной перечислимого типа выделяется ячейка памяти, необходимая для размещения значения типа int. Перечислимый тип, таким образом, представляет собой подмножество целого типа. Над объектами перечислимого типа определены те же операции, что и над объектами целого типа.
<Описатель> специфицирует либо переменную перечислимого типа, либо указатель на значение перечислимого типа, либо массив элементов перечислимого типа, либо функцию, возвращающую значение перечислимого типа, либо более сложный объект, являющийся комбинацией перечисленных типов.
Объявление переменной перечислимого типа начинается с ключевого слова enum и имеет две формы представления.
В первой форме задается список перечисления, содержащий именованные константы. Необязательный <тег> — это идентификатор, который именует перечислимый тип, специфицированный данным списком перечисления, <идентификатор> — это имя переменной перечислимого типа. В одном объявлении может быть описано более одной переменной данного перечислимого типа.
Во второй форме объявления список перечисления отсутствует, однако используется <тег>, который ссылается на перечислимый тип, объявленный в другом месте программы. Если заданный тег ссылается на неизвестный перечислимый тип либо область действия определения этого перечислимого типа не распространяется на текущий блок, то компилятор языка Си сообщает об ошибке. Допускаются объявление указателя на перечислимый тип и объявление typedef для перечислимого типа, использующие тег ранее не определенного перечислимого типа. Однако этот тип должен быть определен к моменту использования этого тега или типа, объявленного посредством typedef.
<Список-перечисления> содержит одну или более конструкций вида:
<идентификатор> [=<константное-выражение>]
Конструкции в списке разделяются запятыми. Каждый <идентификатор> именует элемент списка перечисления. По умолчанию, если не задано <константное-выражение>, первому элементу присваивается значение 0, следующему элементу—значение 1 и т. д. Элемент списка перечисления является константой.
Запись =<константное-выражение> изменяет умалчиваемую последовательность значений. Элемент, идентификатор которого предшествует записи =<константное-выражение>, принимает значение, задаваемое этим константным выражением. Константное выражение должно иметь тип int и может быть как положительным, так и отрицательным. Следующий элемент списка получает значение, равное <константное-выражение>+1, если только его значение не задается явно другим константным выражением.
В списке перечисления могут содержаться элементы, которым сопоставлены одинаковые значения, однако каждый идентификатор в списке должен быть уникальным. Например, двум различным идентификаторам null и zero может быть задано значение 0 в одном и том же списке перечисления. Кроме того, идентификатор элемента списка перечисления должен быть отличным от идентификаторов элементов всех остальных списков перечислений с той же областью действия, а также от других идентификаторов с той же областью действия. Тег перечислимого типа должен быть отличным от тегов других перечислимых типов, структур и объединений с той же самой областью действия.