Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Операции со стандартными простыми типами данных

СТАНДАРТНЫЕ ПРОСТЫЕ ТИПЫ ДАННЫХ

К простым типам данных относятся типы, которые не могут быть представлены в виде множества более простых элементов. В этом смысле переменную простого типа можем рассматривать как переменную, имеющую одно значение в текущий момент времени.

Все стандартные простые данные определены в MSDN на основе структур, т.е. относятся к типам значений. Поскольку эти типы определены в MSDN, ими могут пользоваться программы на любых языках, определенных на этой платформе. Язык С# имеет собственные синонимы этих типов.

Для обработки данных простых типов используются предопределенные операции, обозначаемые специальными знаками. Кроме того, можно использовать поля и методы, определенные в типе.

У всех простых типов есть статические поля, хранящие максимальное (MaxValue)и минимальное (MinValue) значения для данного типа данных.

Статический методпреобразования строки символов в значение заданного типа:

Тип. Parse (строка символов) => значение заданного типа

Метод объектадля преобразования значения в строку символов:

Объект. ToString () => строка символов, в которую преобразовано значение объекта.

Данные в программе могут присутствовать либо в виде переменных, либо в виде констант. Форма записи константы однозначно определяет ее значение и тип. Тип переменной должен быть определен путем явного объявления. Переменные при объявлении могут быть инициализированы любым значением, определенным на момент объявления.

 

Целочисленные типы

Целые числа со знаком

Тип С#              Тип CTS            Длина, байт

sbyte                     Sbyte                                  1

short                     Int16                           2

int                         Int32                           4

long               Int64                           8

 

Целые числа без знака

Тип С#              Тип CTS                Длина, байт

byte                      Byte                            1

ushort                   UInt16                         2

uint                       UInt32                         4

ulong                    UInt64                         8

Константы:

­ Десятичные           ±XXX, где Х - десятичная цифра

­ Шестнадцатеричные ± YYY,где Y – 16-ричная цифра

Тип константы определяется как первый подходящий, начиная с типа int. Возможно указание типа константы в явном виде (с помощью суффикса):

255 L – имеет тип long (L-это суффикс)

255 U – беззнаковая

255 UL – беззнаковая длинная (ulong)

Примеры объявления переменных

inta, b=10, c=int.Parse(“355”), d=b+c, e=short.MaxValue;

Вещественныетипы

ТипС#   CTS      Длина,байтТочность,цифрДиапазон

float     Single          4         7         ≈|10-45|÷≈|1038|

double  Double         8         15 ≈|10-324|÷≈|10308|

 

Константы

­ форма F ±XXX.YYY

­ формаE ±МантиссаЕ ±Порядок

Примеры констант:

5.5 => 5,5    5.0 => 5,0    5. => 5,0

0.5 => 0,5   .5 => 0,5   2.5 E2 => 2,5*102 => 250,0

Все константы имеют тип данныхdouble. Тип константы может быть изменен cпомощью суффикса F:

25.5 =>double

25.5F =>float

Примеры объявления переменных

double a, d=.5, c=double.Parse(“5. 5”);

 

Десятичный тип (денежный тип)

Представляет собой вещественное значение, причем способ кодирования этого значения не совпадает ни с одним способом кодирования вещественных чисел. Поэтому денежный тип несовместим ни с одним вещественным типом.

Тип С#   CTS      Длина,байтТочность,цифрДиапазон

decimal  Decimal        16       28 ≈|10-28|÷≈|1028|

Константы

Целая или вещественная константа с суффиксом М: 25.5М

Логический тип

ТипС #CTS

bool       Bool         

Константы

false – ложь

true -  истина

Логический тип несовместим ни с каким другим типом.

Символьный тип

ТипС #CTS

char    Char        

 

На один символ отводится область памяти длиной 2 байта. В этой области содержится код символа в таблице кодировки Unicode.

Константы записываются в виде управляющей последовательности или в виде символа, заключенного в апострофы:

´\ uXXXX ´ -где XXXX – 16-й код символа по таблице кодировки

‘Символ’

Пример: ‘A’ или ´\u0041’ - это код латинской буквы A

Символьный тип имеет статические методы:

   

 

 



ОПЕРАЦИИ СО СТАНДАРТНЫМИ ПРОСТЫМИ ТИПАМИ ДАННЫХ

Выражение и оператор

Выражение – операнды, объединенные знаками операций. Любое выражение, завершенное ”;” – оператор. Одиночный символ ”;”, не относящийся ни к одному оператору – пустой оператор.

Операндами могут быть:

1. Вызов метода

2. Переменная

3. Константа

4. Выражение

Операции имеют приоритет. Приоритет предписывает очередность выполнения операций в выражении. Операции одного приоритета выполняются слева направо. Исключения будут оговорены особо. Порядок операций можно регулировать скобками“()”.

В зависимости от числа операндов различают:

1) Унарные

2) Бинарные

3) Тернарные

Приоритеты операций по группам:

· Вызов метода

· Унарные операции

· Арифметические операции

· Сдвиги

· Отношения

· Битовые

· Логические

· Тернарная

· Присваивание

Операции присваивания

­ Простое присваивание

А=В

1. Вычисляется значение В

2. Если тип переменной А и тип выражения В не совпадают, то значение В преобразуется к типу А

3. Значение В заносится в область памяти, отведенную для переменной А

int a, b;

a=10;

b=5;

a=a+b;

Операции присваивания выполняются справа налево.

inta, b, с;

a = b = c =100;

­ Составное присваивание объединяет присваивание и одну из бинарных операций

А * =В => А=А * В, где * – бинарная операция

inta =10;

a +=3; // a = a +3; a =13

Преобразование типов выполняется автоматически при выполнении следующих условий:

1. Типы совместимы

2. Преобразование не приведет кпотери информации

Совместимые типы

Приемник                      Источник

bool                             bool

char                            char

decimal                        decimal, char, целыйтип

целый тип               целый тип, char

вещественный тип        вещественный тип, целый тип, char

Если типы совместимы, проверяется возможность потери информации при преобразовании. Потери возможны:

1. При присваивании целой переменной вещественного значения (теряется дробная часть)

2. При присваивании переменной с меньшим диапазоном значений значения переменной с большим диапазоном значений.

В случае возможности потери информации фиксируется ошибка.

Рассмотренная схема преобразования типов уникальна только для операции присваивания, во всех остальных операциях действует другая схема. 



<== предыдущая лекция | следующая лекция ==>
Вопрос 3. Прокуратура российской федерации | Преобразование типов операндов при выполнении операций
Поделиться с друзьями:


Дата добавления: 2018-10-18; Мы поможем в написании ваших работ!; просмотров: 285 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Лаской почти всегда добьешься больше, чем грубой силой. © Неизвестно
==> читать все изречения...

2355 - | 2220 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.012 с.