рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Лекция 4

Лекция 4 - Лекция, раздел Компьютеры, Лекция 4   Базовые Типы Данных   ...

 

Базовые типы данных

 

Тип задаётся набором допустимых значений и действий, которые можно производить над данными этого типа. Типы данных языка C схематически представлены на рисунке 1.

 

Рис. 1

 

Базовые типы данных языка C.

Тип char – символьный тип, хранит код символа. Любой символ в компьютере, который можно ввести с клавиатуры, вывести на монитор, имеет соответствующий ему код. Эти коды представлены в таблицах кодировок ASCII, ГОСТ и других, в зависимости от используемой компьютером кодировки. Преобразование символа в код и наоборот производится компьютером автоматически.

Тип int – целочисленный тип, хранит значение целого числа.

Тип float – вещественный тип, хранит значение числа с плавающей точкой.

Тип double – вещественный тип двойной длины, хранит значение числа с плавающей точкой.

Типы char, int, float, double является знаковыми, то есть переменная данного типа может принимать положительные и отрицательные значения.

Тип void – пустой тип, не имеющий значения.

 

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

Модификатор signed – знаковый тип, хранит значения как положительные, так и отрицательные.

Модификатор unsigned – беззнаковый тип, хранит только неотрицательные значения.

Модификатор short – короткий тип, хранит укороченные значения.

Модификатор long – длинный тип, хранит удлинённые значения.

Модификаторы signed и unsigned могут применяться к типам char и int. Модификаторы short и long могут применяться к типу int. Модификатор long может также применяться к типу double. Модификаторы signed и unsigned могут комбинироваться с модификаторами short и long в применении к типу int.

В следующей таблице приведены все возможные типы с различными комбинациями модификаторов для стандарта ANSI языка C, их размеры в байтах и интервалы изменения.

 

Тип Размер в байтах (битах) Интервал изменения
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
signed long int 4(32) от -2147483648 до 2147483647
unsigned long int 4(32) от 0 до 4294967295
float 4(32) от -3.4E+38 до -3.4E-38
    от 3.4E-38 до 3.4E+38
double 8(64) от -1.7E+308 до -1.7E-308
    от 1.7E-308 до 1.7E+308
long double 10(80) от -3.4E+4932 до -3.4E-4932
    от 3.4E-4932 до 3.4E+4932

 

В среде Borland C++ 3.1 можно в объявлениях переменных опускать слово int (например, short вместо short int, unsigned short вместо unsigned short int).

Все числа в памяти ЭВМ хранятся в двоичной системе счисления, но для программиста они доступны в десятичной системе счисления.

Различие между целыми числами со знаком и целыми числами без знака состоит в том, как интерпретируется старший бит целого числа в машинном представлении. Старший бит для целого знакового числа определяет знак числа. Если старший бит равен нулю, то число положительное, если единице, то число отрицательное. Отрицательные числа хранятся в обратном коде. Старший бит для целого беззнакового числа является обычным численным разрядом.

 

Константы

 

В языке C константа представляет собой фиксированную величину, которая не может быть изменена в программе. В языке C определены 4 типа констант:

- целые числа (базовый тип – int);

- вещественные числа (базовые типы – float, double);

- символьные (базовый тип – char);

- строковые (массив символов).

Целые константы – натуральные числа. В языке C используются числа в восьмеричной, десятичной и шестнадцатеричной системах счисления. Чтобы отличать восьмеричные и шестнадцатеричные константы от десятичных, перед восьмеричными константами ставится ноль, а перед шестнадцатеричными – пара символов ‘0x’.

 

Пример 1

Тип данных Восьмеричная константа Десятичная константа Шестнадцатеричная константа
int
int 7B
short int -473 -315 -13B (FEC5)
unsigned int CC4C
long int 124F8

 

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

Вещественные константы – вещественные числа в десятичной системе счисления.

 

Пример 2

Тип данных Константа
float 14.9
float -0.516
float -2.5e-7
double 14.9
double -4.96e-19
double

 

Символьные константы – целые числа, значения которых соответствует ASCII-коду символа. Символьные константы заключаются в одинарные кавычки. В качестве символьной константы может выступать escape-последовательность, также взятая в одинарные кавычки.

 

Пример 3

Тип данных Константа ASCII-код
char ‘a’
char ‘n’
char ‘9’

 

Строковые константы – это группа (массив) символов в количестве от 0 до произвольного числа n, заключённая в двойные кавычки и заканчивающаяся нулевым байтом. В строковую константу могут входить escape-последовательности.

 

Пример 4.

“Это - n строковая константа”

 

Строковая константа в программе может быть записана в двух или более строках, но при выводе на консоль в рабочем режиме программы она будет выведена в одну строку, если для переноса на другую строку используются знаки ‘<Enter>’, так как под символы ‘<Enter>’ память не отводится.

 

Пример 5.

printf (“Эта строковая константа

при выводе на консоль

будет записана в одну строку”);

 

Если несколько строк записаны без разделителя или через разделители пробел, Enter или табуляция, то компилятор объединит их в одну строку.

 

Пример 6.

"Hel" "lo, "

"Wor" "ld""!"

 

Особенностью представления строковых констант в языке C является то, что под строковую константу компилятор отводит на один байт больше, чем число символов в константе. Этот дополнительный байт всегда является в константе последним и заполняется нулевым значением ‘’.

 

Пример 7

H e l l o ,   W o r l d ! ‘’

 

Под разделительные символы (пробел, Enter, табуляция), присутствующие в строке, также отводятся соответствующие байты.

 

Правила определения типа константы.

Целая константа относится к типу int, если эта константа входит в интервал значений типа int. Если эта константа не входит в интервал значений типа int, то она считается константой типа unsigned int, если же она не входит в интервал unsigned int, то она считается константой типа long int, если же она не входит в интервал long int, то она считается константой типа unsigned long int.

Константа с десятичной точкой считается константой типа double, если она помещается в соответствующий интервал изменения.

Константы символьного и строкового типов задаются явно.

В языке C имеется механизм явного задания типов констант с помощью суффиксов. В качестве суффиксов для целочисленных констант могут использоваться u, l, h, U, L, H, для вещественных констант – l, f, L, F.

 

Пример 8

Тип данных Константы
short int 12h, 34H
long int 23L, -237l
unsigned int 17u, 456U
unsigned long int 89lu, 89Lu, 89ul, 7UL, 7Ul
unsigned short int 45uh, 45uH
float 23.4F, -67.7E-24f
long double 1.39l, 12.0L

 

 

– Конец работы –

Эта тема принадлежит разделу:

Лекция 4

На сайте allrefs.net читайте: Лекция 4.

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Лекция 4

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Эта работа не имеет других тем.

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги