Файл: Типы данных, пространство имен, классификация типов среды .NET.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 23.04.2023

Просмотров: 97

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Например,

byte ib=21; int i=2147483640;

int j=ib+i; /*результат 2147483861 не может разместиться в памяти, отведенной типу int, результат не достоверен*/[45]

В процессе обработки программы транслятор выполняет явные и неявные преобразования типов данных. [46]

По желанию программиста можно использовать явное (принудительное) приведение типов нужных операндов. Например:

int i=16; byte ib=(byte)i; /*переменная типа int приведена к типу byte, результат присвоен ib типа byte*/

double d=1.0e+100; float f=(float)d; /*переменная типа double приведена к типу float, результат присвоен f типа float, потеря информации*/

Естественно, потеря информации при этом контролируется только самим программистом. В C# разрешено принудительное приведение любых базовых типов, кроме типа bool. Тип и значения «приводимых» переменных после[47] операции приведения не изменяются и далее в программе они используются в прежнем качестве.

Этот эффект объясняется тем, что в процессе приведения образуется временная переменная нового типа, которая и используется для присваивания значения другой переменной или в арифметической операции, после чего временная переменная уничтожается.

В первом абзаце демонстрируется операция вычитания двух переменных @byte и @byte1 типа byte. Оба операнда автоматически приводятся к типу int, после чего выполняется вычитание и результат присваивается переменной @int типа int.

Далее отрицательная переменная (@int=-44) последовательно явным образом приводится к типам byte, uint и long. Только последняя операция приведения дает достоверный результат.

В третьем абзаце показаны манипуляции с символами и их кодами. Задаются два символа & и 1. Явное преобразование в тип char выявляет коды 38 и 49 соответственно. Перед сложением двух символьных переменных происходит автоматическое приведение слагаемых, результат присваивается переменной типа int. Полученная сумма явно приводится к типу char, и выясняется, что это код символа W. Если компьютер «не знает» символа с таким кодом, будет выведен вопросительный знак. [48]

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


Таблица 1.8. Автоматическое приведение базовых типов при бинарных операциях

first

second

byte

sbyte

short

ushort

int

uint

long

ulong

char

float

double

decimal

byte

int

int

int

int

int

uint

long

ulong

int

float

double

decimal

sbyte

int

int

int

int

int

long

long

!!!

int

float

double

decimal

short

int

int

int

int

int

long

long

!!!

int

float

double

decimal

ushort

int

int

int

int

int

uint

long

ulong

int

float

double

decimal

int

int

int

int

int

long

long

!!!

int

float

double

decimal

uint

ulong

long

long

ulong

long

ulong

long

ulong

uint

float

double

decimal

long

long

long

long

long

long

long

!!!

long

float

double

decimal

ulong

ulong

!!!

!!!

ulong

!!!

ulong

!!!

ulong

float

double

decimal

char

int

int

int

int

int

uint

long

ulong

int

float

double

decimal

float

float

float

float

float

float

float

float

float

float

double

!!!

double

double

double

double

double

double

double

double

double

double

double

!!!

decimal

decimal

decimal

decimal

decimal

decimal

decimal

decimal

decimal

decimal

!!!

!!!

dynamic


!!! ошибочный результат;[49]

приведение обоих операндов;

без приведения. [50]

Заключение

Любое прочтение теоретического материала лучше всего сразу же закреплять практическими навыками. Поэтому изначально было принято решение об установке среды разработки приложений Microsoft Visual Studio и отработке в ней всех листингов, встречаемых по пути ознакомления с материалом из книг и учебников.

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

Была освещена тема инициализации переменных, области действия на практических примерах, наглядно показаны арифметические и логические операции. Освещено понятие стека, кучи, сборщика мусора и разъяснен смысл приведения типов.

В целом были раскрыты все поставленные задачи.

Библиография

1. Фленов М.Е. - Библия С# / М.Е. Фленов. - 3-изд., СПб.: Питер, 2016. – 546 c.

2. Ишкова Э.А. - C#. Начала программирования / Э.А.Ишкова. - 2 изд., СПб.: НиТ, 2013. – 494 с.

3. Svetlin, Nakov, Veselin, Kolev & Co. – Fundamentals of computer programming / Svetlin, Nakov, Veselin, Kolev & Co., URL: https://introprogramming.info/english-intro-csharp-book/ (Дата обращения: 11.03.2019 ), 2013. – 1122 с.

4. Дубовцев А.В. Microsoft .NET. Наиболее полное руководство. / А.В. Дубовцев.– СПб.: БХВ-Петербург, 2004. – 701 с.

5. Петцольд Ч. - Программирование для Microsoft Windows на С#. / Ч. Петцольд. - Том 1, М.: Издательско – торговый дом «Русская Редакция», 2002. -576 с.

6. Лабор В.В. - C# Создание приложений для Windows. / В.В. Лабор – Мн.: Харвест, 2003. – 384 с.

7. Троэлсен Э. - C# и платформа NET Библиотека программиста. / Э.Троэлсен. - СПб.: Питер, 2004. – 796 с.

8. Рихтер Д. – CLR via C# Программирование на платформе Microsoft .NET Framework 2.0 на языке C#. / Д.Рихтер – СПб.: Питер, 2008. – 656 с.

9. Робинсон С. - C# для профессионалов. / С.Робинсон - Tом 1, М.: Лори, 2003. –516 с.

10. Рейли Д. Создание приложений ASP.NET. / Д. Рейли, - М.: Издательско – торговый дом «Русская Редакция», 2002. -480 с.

11. Microsoft Corporation - Разработка Windows приложений на Microsoft Visual Basic NET и Microsoft Visual C# NET Учебный курс MCAD MCSD / Microsoft Corporation. - М.: Издательско – торговый дом «Русская Редакция», 2003. -512 с.

12. Фролов А.В., Фролов Г.В. Язык C#. Самоучитель. / А.В.Фролов, Г.В.Фролов – М.: ДИАЛОГ – МИФИ, 2003. – 560 с.

  1. Фленов М.Е. - Библия С#, 3-изд. – 2016. - С.50-51.

  2. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.33.

  3. Svetlin, Nakov, Veselin, Kolev & Co. – Fundamentals of computer programming. - 2013. – C.111.

  4. Svetlin, Nakov, Veselin, Kolev & Co. – Fundamentals of computer programming. - 2013. – C.111.

  5. Дубовцев А.В. Microsoft .NET. Наиболее полное руководство. – 2004. - С.34.

  6. Фленов М.Е. - Библия С#, 3-изд. – 2016. - С.51.

  7. Фленов М.Е. - Библия С#, 3-изд. – 2016. - С.51.

  8. Svetlin, Nakov, Veselin, Kolev & Co. – Fundamentals of computer programming. - 2013. – C.111.

  9. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.33.

  10. Фленов М.Е. - Библия С#, 3-изд. – 2016. - С.53.

  11. Svetlin, Nakov, Veselin, Kolev & Co. – Fundamentals of computer programming. - 2013. – C.112.

  12. Svetlin, Nakov, Veselin, Kolev & Co. – Fundamentals of computer programming. - 2013. – C.112.

  13. Фленов М.Е. - Библия С#, 3-изд. – 2016. - С.52.

  14. Фленов М.Е. - Библия С#, 3-изд. – 2016. - С.52.

  15. Петцольд Ч. - Программирование для Microsoft Windows на С#. Том 1. -2002. -C.10-11.

  16. Петцольд Ч. - Программирование для Microsoft Windows на С#. Том 1. -2002. -C.10-11.

  17. Лабор В.В. - C# Создание приложений для Windows. – 2003. - С.52.

  18. Троэлсен Э. - C# и платформа NET Библиотека программиста – 2004. - C.98.

  19. Троэлсен Э. - C# и платформа NET Библиотека программиста – 2004. - C.98.

  20. Рихтер Д. – CLR via C# Программирование на платформе Microsoft .NET Framework 2.0 на языке C# – C.111.

  21. Рихтер Д. – CLR via C# Программирование на платформе Microsoft .NET Framework 2.0 на языке C# – C.111.

  22. Робинсон С. - C# для профессионалов Tом 1. – 2004. –C.45.

  23. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.72-73.

  24. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.73.

  25. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.73-74.

  26. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.37.

  27. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.37-38, 46.

  28. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.46-47.

  29. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.47.

  30. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.47.

  31. Лабор В.В. - C# Создание приложений для Windows. – 2003. - С.52.

  32. Рейли Д. Создание приложений ASP.NET. – 2002. – С.47-49.

  33. Лабор В.В. - C# Создание приложений для Windows. – 2003. - С.52.

  34. Svetlin, Nakov, Veselin, Kolev & Co. – Fundamentals of computer programming. - 2013. – C.80.

  35. Лабор В.В. - C# Создание приложений для Windows. – 2003. - С.52.

  36. Microsoft Corporation - Разработка Windows приложений на Microsoft Visual Basic NET и Microsoft Visual C# NET Учебный курс MCAD MCSD - 2003. – С.7-8.

  37. Лабор В.В. - C# Создание приложений для Windows. – 2003. - С.52-53.

  38. Лабор В.В. - C# Создание приложений для Windows. – 2003. - С.53.

  39. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.38-39.

  40. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.39.

  41. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.39-40.

  42. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.40-41.

  43. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.40-41.

  44. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.41.

  45. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.42-43.

  46. Фролов А.В., Фролов Г.В. Язык C#. Самоучитель.– 2003. - С.70.

  47. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.43.

  48. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.43-44.

  49. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.44.

  50. Ишкова Э.А. - C#. Начала программирования, 2 изд. – 2013. - С.44.