Данные – это объекты, которые обрабатываются в программе. В языке Си есть два вида данных: константы и переменные. Константа – данное, которое не может меняться в процессе работы программы. Тип и значение константы однозначно определяются её изображением в программе.
Константы в программе записываются: в виде целых или вещественных чисел; в виде символьных констант; в виде строковых констант; в виде стандартных имен констант; в виде определённых в программе имён констант. Переменная – данное, которое может меняться в процессе выполнения программы, например путём присваивания ей значения выражения. В тексте программы переменные обозначаются с помощью имён.
В программе на языке Си для каждого данного должен быть определён его тип. Тип данного определяет возможные значения данного и допустимые операции, которые можно применять к этим значениям. В языке Си различают понятия » тип данных » и » модификатор типа «. Тип данных — это, например, целый, а модификатор — со знаком или без знака.
ООП за 5 минут 😱 что такое объектно-ориентированное программирование
Целое со знаком будет иметь как положительные, так и отрицательные значения, а целое без знака — только положительные значения. В языке Си можно выделить пять базовых типов, которые задаются следующими ключевыми словами: ∙ char — символьный; ∙ int — целый; ∙ float — вещественный; ∙ double — вещественный двойной точности; ∙ void — не имеющий значения.
Дадим им краткую характеристику: 1. Переменная типа char имеет размер 1 байт, ее значениями являются различные символы из кодовой таблицы, например: ‘ф’, ‘:’, ‘j’ (при записи в программе они заключаются в одинарные кавычки). 2. Размер переменной типа int в стандарте языка Си не определен.
В большинстве систем программирования размер переменной типа int соответствует размеру целого машинного слова. Например, в компиляторах для 16-разрядных процессоров переменная типа int имеет размер 2 байта. В этом случае знаковые значения этой переменной могут лежать в диапазоне от -32768 до 32767. 3. Ключевое слово float позволяет определить переменные вещественного типа.
Их значения имеют дробную часть, отделяемую точкой, например: -5.6, 31.28 и т.п. Вещественные числа могут быть записаны также в форме с плавающей точкой, например: -1.09e+4. Число перед символом «е» называется мантиссой, а после «е» — порядком. Переменная типа float занимает в памяти 32 бита. Она может принимать значения в диапазоне от 3.4е-38 до 3.4e+38.
4. Ключевое слово double позволяет определить вещественную переменную двойной точности. Она занимает в памяти в два раза больше места, чем переменная типа float (т.е. ее размер 64 бита). Переменная типа double может принимать значения в диапазоне от 1.7e-308 до 1.7e+308.
5. Ключевое слово void (не имеющий значения) используется для нейтрализации значения объекта, например, для объявления функции, не возвращающей никаких значений. Объект некоторого базового типа может быть модифицирован. С этой целью используются специальные ключевые слова, называемые модификаторами. В стандарте ANSI языка Си имеются следующие модификаторы типа:
Топ-10 фишек программирование на JavaScript ОБЪЕКТЫ, все что ты должен знать!
unsigned signed short long
Модификаторы записываются перед спецификаторами типа, например: unsigned char. Если после модификатора опущен спецификатор, то компилятор предполагает, что этим спецификатором является int. Таким образом, следующие строки: long а; long int а; являются идентичными и определяют объект а как длинный целый. Табл.
7 иллюстрирует возможные сочетания модификаторов (unsigned, signed, short, long) со спецификаторами (char, int, float и double), а также показывает размер и диапазон значений объекта (для 16-разрядных компиляторов).
Таблица 7. | ||||
Типы данных языка Си | ||||
Тип | Размер в | Диапазон значений | Знаковый | |
байтах | (может ли хранить | |||
char | (битах) | отрицательные числа) | ||
1 (8) | от -128 | до 127 | Да | |
unsigned char | 1 (8) | От 0 до 255 | Нет | |
signed char | 1 (8) | от -128 | до 127 | Да |
int | 2 (16) | от -32768 | до 32767 | Да |
unsigned int | 2 (16) | от 0 до 65535 | Нет |
signed int | 2 (16) | от -32768 | до 32767 | Да | |
short int | 2 (16) | от -32768 | до 32767 | Да | |
unsigned short int | 2 (16) | от 0 до 65535 | Нет | ||
signed short int | 2 (16) | от -32768 | до 32767 | Да | |
long int | 4 (32) | от -2147483648 | до 2147483647 | Да | |
unsigned long int | 4 (32) | от 0 до 4294967295 | Нет | ||
signed long int | 4 (32) | от -2147483648 | до 2147483647 | Да | |
float | 4 (32) | от 3.4е-38 | до 3.4е+38 | Нет | |
double | 8 (64) | от 1.7-308 | до 1.7+308 | Нет | |
long double | 10 (80) | от 3.4Е-4932 | до 3.4Е+4932 | Нет |
Константы вещественного типа записываются в двух формах: в виде вещественных дробных чисел без десятичного порядка; в виде вещественных чисел с десятичным порядком. Вещественные дробные константы без десятичного порядка представляются синтаксической диаграммой (рис.25).
+ | . |
Цифра1 | Цифра2 |
– |
Рис. 25. СД представления вещественного числа без десятичного порядка Где «Цифра1» – цифра (0,1,…, 9) целой части числа; «Цифра2» – цифра дробной части числа. Пример 12. Вещественные константы без десятичного порядка на языке Паскаль: –2.45, +33.668, 0.04, 0.0453. Вещественное число с десятичным порядком представляется диаграммой (рис.26):
+ | . | |
Цифра1 | Цифра2 | E |
– | ||
+ |
Цифра3 –
Рис. 26. СД представления вещественного числа с десятичным порядком
Источник: studfile.net
Тема 5. Стандартные типы данных
Данные – это объекты, которые обрабатываются в программе.
В языке Си есть два вида данных: константы и переменные.
Константа – данное, которое не может меняться в процессе работы программы. Тип и значение константы однозначно определяются её изображением в программе. Константы в программе записываются: в виде целых или вещественных чисел; в виде символьных констант; в виде строковых констант; в виде стандартных имен констант; в виде определённых в программе имён констант.
Переменная – данное, которое может меняться в процессе выполнения программы, например путём присваивания ей значения выражения. В тексте программы переменные обозначаются с помощью имён.
В программе на языке Си для каждого данного должен быть определён его тип. Тип данного определяет возможные значения данного и допустимые операции, которые можно применять к этим значениям.
В языке Си различают понятия » тип данных » и » модификатор типа «. Тип данных — это, например, целый, а модификатор — со знаком или без знака. Целое со знаком будет иметь как положительные, так и отрицательные значения, а целое без знака — только положительные значения. В языке Си можно выделить пять базовых типов, которые задаются следующими ключевыми словами:
· double — вещественный двойной точности;
· void — не имеющий значения.
Дадим им краткую характеристику:
1. Переменная типа char имеет размер 1 байт, ее значениями являются различные символы из кодовой таблицы, например: ‘ф’, ‘:’, ‘j’ (при записи в программе они заключаются в одинарные кавычки).
2. Размер переменной типа int в стандарте языка Си не определен. В большинстве систем программирования размер переменной типа int соответствует размеру целого машинного слова. Например, в компиляторах для 16-разрядных процессоров переменная типа int имеет размер 2 байта. В этом случае знаковые значения этой переменной могут лежать в диапазоне от -32768 до 32767.
3. Ключевое слово float позволяет определить переменные вещественного типа. Их значения имеют дробную часть, отделяемую точкой, например: -5.6, 31.28 и т.п. Вещественные числа могут быть записаны также в форме с плавающей точкой, например: -1.09e+4. Число перед символом «е» называется мантиссой, а после «е» — порядком. Переменная типа float занимает в памяти 32 бита.
Она может принимать значения в диапазоне от 3.4е-38 до 3.4e+38.
4. Ключевое слово double позволяет определить вещественную переменную двойной точности. Она занимает в памяти в два раза больше места, чем переменная типа float (т.е. ее размер 64 бита). Переменная типа double может принимать значения в диапазоне от 1.7e-308 до 1.7e+308.
5. Ключевое слово void (не имеющий значения) используется для нейтрализации значения объекта, например, для объявления функции, не возвращающей никаких значений.
Объект некоторого базового типа может быть модифицирован. С этой целью используются специальные ключевые слова, называемые модификаторами. В стандарте ANSI языка Си имеются следующие модификаторы типа:
Модификаторы записываются перед спецификаторами типа, например: unsigned char. Если после модификатора опущен спецификатор, то компилятор предполагает, что этим спецификатором является int. Таким образом, следующие строки:
являются идентичными и определяют объект а как длинный целый. Табл. 7 иллюстрирует возможные сочетания модификаторов (unsigned, signed, short, long) со спецификаторами (char, int, float и double), а также показывает размер и диапазон значений объекта (для 16-разрядных компиляторов).
Типы данных языка Си
Константы вещественного типа записываются в двух формах: в виде вещественных дробных чисел без десятичного порядка; в виде вещественных чисел с десятичным порядком. Вещественные дробные константы без десятичного порядка представляются синтаксической диаграммой (рис.25).
Где «Цифра1» – цифра (0,1,…, 9) целой части числа;
«Цифра2» – цифра дробной части числа.
Пример 12. Вещественные константы без десятичного порядка на языке Паскаль: –2.45, +33.668, 0.04, 0.0453.
Вещественное число с десятичным порядком представляется диаграммой (рис.26):
Здесь «Цифра1» – цифры целой части мантиссы;
«Цифра2» – цифры дробной части мантиссы;
Е – признак десятичного порядка;
«Цифра3» – цифры десятичного порядка.
Приведем примеры вещественных чисел с десятичным порядком:
1. Вещественное число 45,3·10 –3 может представляться на языке Си в виде вещественной константы с десятичным порядком следующим образом: +45.3E–3 или 4.53E–2 или 0.453E–1.
2. Вещественное число –45·10 4 может быть представлено на языке Си в виде вещественной константы с десятичным порядком следующим образом:
–45E4 или –4.5E5 или –0.45E+6.
Количество значащих цифр в вещественной константе и величина порядка зависят от разновидности вещественного числа и определяются в соответствии с приведенной ранее таблицей.
Источник: cyberpedia.su
Объекты, методы, свойства, события
В основе объектно-ориентированного программирования (ООП) лежат следующие базовые понятия: объект, свойство объекта, метод обработки, событие, класс объектов.
Определение 1. Объект — совокупность свойств (параметров) определенных сущностей и методов их обработки (программных средств), т.е. объект– это нечто целое, объединяющее некоторые данные, чем можно управлять с помощью кода VBA. Например, любое приложение Windows – Word, Excel, Explorer и другие являются объектом языка, который называется Application (Приложение); окно программы – объект Windows; документ HTML – объект Document; диапазон ячеек в Excel – объект Range и т.д.
Объект содержит инструкции (программный код), определяющие действия, которые может выполнять объект, и обрабатываемые данные. Один объект может выступать объединением вложенных в него по иерархии других объектов. В частном случае, в VBA объектом являются элементы пользовательского интерфейса, которые создаются на Форме пользователя (UserForm) или на рабочем листе, а также рабочая книга и её элементы.
Объекты могут объединяться в классы, т.е. объект является экземпляром класса.
Определение 2. Класс — совокупность объектов, характеризующихся общностью применяемых методов обработки или свойств.
Определение 3. Свойство — характеристика объекта, его параметр.
Все объекты наделены определенными свойствами, которые в совокупности выделяют объект из множества других объектов. Свойства объектов различных классов могут «пересекаться», т.е. возможны объекты обладающие одинаковыми свойствами:
Одним из свойств объекта являются метод его обработки.
Определение 4. Метод — программа действий над объектом или его свойствами.
Метод рассматривается как программный код, связанный с определенным объектом; осуществляет преобразование свойств, изменяет поведение объекта. Объект может обладать набором заранее определенных встроенных методов обработки, либо созданных пользователем или заимствованных в стандартных библиотеках, которые выполняются при наступлении заранее определенных событий, например, однократное нажатие левой кнопки мыши, вход в поле ввода, выход из поля ввода, нажатие определенной клавиши и т.п.
Проводя лингвистические аналогии, можно сказать, что объекты – это существительные, свойства – это прилагательные,а методы – глаголы в предложениях языка VBA.
Определение 5. Событие — изменение состояния объекта.
Внешние события генерируются пользователем (например, клавиатурный ввод или нажатие кнопки мыши, выбор пункта меню, запуск макроса); внутренние события генерируются системой.
Существуют различные объектно-ориентированные технологии и методики проектирования программных продуктов, которые должны обеспечить выполнение важнейших принципов объектного подхода:
¨ Инкапсуляция (замыкание) свойств данных и программ в объекте. Инкапсуляция – это скрытие информации. При ООП возможен доступ к объекту только через его методы и свойства. Внутренняя структура объекта скрыта от пользователя, т.е. объекты – это самостоятельные сущности, отделенные от внешнего мира.
Инкапсуляция позволяет изменять реализацию объектов любого класса без опасений, что это вызовет нежелательные побочные эффекты в программной системе. Это мощное средство обеспечивает многократное использование одного и того же программного кода, позволяя собирать программу из готовых модулей, как здание из отдельных кирпичиков, но различной архитектуры и функционального назначения.
¨ Наследование – это возможность выделить свойства, методы и события одного объекта и приписать их другому объекту, иногда с их модификацией. Класс может иметь образованные от него подклассы. При построении подклассов осуществляется наследование данных и методов обработки объектов исходного класса. Механизм наследования позволяет переопределить или добавить новые данные и методы их обработки, создать иерархию классов. С точки зрения программиста, новый класс должен содержать только коды и данные для новых или изменяющихся методов.
¨ Полиморфизм – способность объекта реагировать на запрос (вызов метода) сообразно своему типу, при этом одно и то же имя метода может использоваться для различных классов объектов. Например, команда Print, будет по-разному воспринята черно-белым или цветным принтером.
Объекты, методы, свойства, события
Объектам VBA присуща функциональность – они действуют определенным образом и могут откликаться на определенные ситуации. При этом, если свойства объекта определяют его внешний вид и состояние, методы объекта определяют те задачи, которые может выполнить данный объект. Методы, по сути дела, представляют собой сегмент программного кода, внедренного в объект.
Существует определенный формат программного кода, задающего установку свойства, получения значения свойства и использование метода:
Объект.Свойство = Значение
Переменная= Объект.Свойство
Объект.Метод [Параметр1 [… …]
Здесь Объект – имя настраиваемого объекта; Свойство – это характеристика, которую нужно изменить; Метод – это команда, которая используется для изменения объекта; Значение – это новая установка свойства; Параметр – это аргумент, используемый методом.
Пример 1. Следующий пример показывает, как можно изменить текст в строке заголовка окна приложения посредством установки нового значения свойству Caption объекта Application:
Application.Caption = “Пример установки свойства”
Различные типы объектов могут иметь различные методы.
Пример 2. Пример применения метода Show (показать) к объекту UserForm (Форма Пользователя):
UserForm 1. Show
В результате применения этого метода Форма Пользователя будет выведена на активный рабочий лист текущей книги Excel.
Объекты могут реагировать на события – действия пользователя или другие внешние действия, например, щелчок по кнопке, изменение текста, нажатие клавиши и др. Событие представляет собой действие, распознаваемое объектом, для которого можно запрограммировать отклик.
Иногда свойства и методы объекта оказываются связанными в том смысле, что выполнение некоторого метода приводит к изменению свойств объекта. В свою очередь, изменение некоторых свойств может вызвать наступление событий. Очевидно, что применение метода Move (переместить), допустим, к тому же объекту UserForm изменит значения его свойств (Left и Top), определяющих его местоположение. С другой стороны, результатом принудительного изменения размеров объекта, очевидно, будет событие Resize.
Программа может обрабатывать два основных типа событий: инициируемые пользователем и генерируемые системой. События, инициируемые пользователем, возникают в результате его действий: нажатие клавиши, щелчки кнопками мыши. Но есть события, являющиеся следствием действий пользователя. Например, снятие или установка Флажка пользователем изменяет значение его свойства Value, а это означает наступление события Change.
Таким образом, любое из действий пользователя может вызвать целый набор событий, и порядок их вызова может быть важным. Основными действиями пользователя, генерирующими вызов событий в программе, являются следующие:
Источник: poisk-ru.ru