2807

Объявление и инициализация переменных

Лекция

Информатика, кибернетика и программирование

Лекция 5 Объявление и инициализация переменных Переменная – это ячейка памяти определённого типа, в которой может храниться значение данного типа. Объявление переменной – это её создание в тексте программы. Форма записи: модификатор тип сп...

Русский

2012-10-19

37.5 KB

19 чел.

Лекция 5

Объявление и инициализация переменных

Переменная – это ячейка памяти определённого типа, в которой может храниться значение данного типа. Объявление переменной – это её создание в тексте программы. Форма записи:

модификатор тип список_переменных;

Поле модификатор определяет класс памяти переменной или особенности преобразования переменной компилятором и является необязательным. Поле тип определяет тип переменной, может быть одним из базовых типов данных языка C или типов данных, определяемых пользователем, и является обязательным. Нельзя создать переменную типа void. Поле список_переменных является обязательным и содержит одно или несколько объявлений переменных, разделённых запятыми.

Форма объявления переменной в поле список_переменных:

имя=инициализатор

Поле имя задаёт идентификатор переменной и является обязательным. Поле инициализатор задает инициализатор переменной и является необязательным.

При объявлении переменной компилятор выделяет место в памяти компьютера, необходимое для размещения переменной данного типа.

Пример 1

int a, b, c;

float a1,a2;

unsigned int unsigned_int;

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

В языке C переменная может быть объявлена:

  •  вне каких-либо функций, в том числе и функции main(), это глобальная переменная, она может использоваться в любом месте программы;
  •  переменная может быть объявлена внутри блока операторов, в том числе внутри функции, это локальная переменная, она может использоваться только внутри данного блока;
  •  переменная может быть объявлена как формальный параметр функции, это локальная для функции переменная, она может быть использована только внутри функции.

Подробнее об этом – при рассмотрении классов памяти и областей видимости.

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

Пример 2

int a, b=10, c;

float a1=3.7,a2=2.5;

unsigned int unsigned_int=0;

Объявление переменной приводит к выделению памяти, которая при этом никак не очищается, и значение переменной не определено. Инициализация приводит к тому, что при выделении ячейки памяти в неё записывается начальное значение.

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

Пример 3

for(int i=0;i<5;i++)

{

int h=0;

h++;

}

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

Если переменную типа int или char инициализировать константой, значение которой лежит за пределами диапазона значений типа данных переменной, то значением переменной будет целочисленный остаток от деления константы на число , где size – размер типа данных переменной в битах.

Пример 4

char ch=259;

В переменную ch будет занесено значение 3.

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

Пример 5

float f1=5e-50, f2=5e+50;

В переменную f1 будет занесено значение 0, значение переменной f2 – +INF.

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

Пример 6

short int k=40000;

Переменная k будет иметь значение –25536.

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

Пример 7

unsigned short t=-15;

Переменная t будет иметь значение 65521.

Переменную типа char можно инициализировать константой типа int, значение которой лежит в диапазоне значений типа данных char. В этом случае в переменную будет занесено целое число – код символа, который в дальнейшем будет рассматриваться как символ.

Пример 8

char ch=87;

В переменную ch будет занесено значение 87, соответствующее символу ‘W’.


 

А также другие работы, которые могут Вас заинтересовать

84141. Категории отрицания и отрицания отрицания. Метафизическое и диалектическое понимание отрицания. Закон отрицания отрицания 38.35 KB
  Отрицание в логике это акт опровержения некоего несоответствующего действительности высказывания который разворачивается в новое высказывание. В философии же отрицание это возникновение нового отменяющего и замещающего собой старое. Применяться подобным образом в философии термин отрицание стал Гегелем который с его помощью объяснял циклический характер развития действительности: 1. В чем суть этого противоречия которое созревает в Разуме и отменяет отрицает собою нынешнее состояние Разума Рассмотрим это: суть этого внутренне...
84142. Общая характеристика философских категорий. Метафизическое и диалектическое понимание их взаимосвязи 39.51 KB
  Кроме того категории отражают наиболее важные характеристики и явления бытия которые пронизывают бытие насквозь во всём его многообразии и во всей его необъятности время пространство движение причина следствие единичное общее материя дух взаимодействие сила субстанция и т. К основным категориям относятся: бытиенебытие единичноеобщее причинаследствие случайностьнеобходимость сущностьявление возможностьдействительность материядвижение времяпространство качествоколичество сущностьявление содержаниеформа...
84143. Понятие общества. Основные идеи формационного и цивилизационного понимания общественной жизни и истории 38.69 KB
  Народ это всё население как таковое вовлеченное в совместную жизнь в системе какоголибо общества. Особая специфика и особая сложность общества состоит в том что его главным смысловым элементом является человек в результате чего общество в отличие от природных систем взаимодействия обладает высокой степенью непредсказуемости своего развития. Благодаря этому общественное развитие это процесс настолько сложный что его исследовательский анализ и теоретическое описание вызывают огромные трудности и сопровождаются безостановочными...
84144. Трудовая деятельность людей как основной фактор антропосоциогенеза. Общественное бытие и общественное сознание, характер их соотнесенности 32.32 KB
  Общественное бытие и общественное сознание характер их соотнесенности. Решающим для превращения человека в разумное и общественное животное стало пользование огнем и приручение животных. Таким образом благодаря труду бытие отдельного человека включено в общественное бытие. Общественное бытие это совокупность всевозможных форм совместной деятельности людей подчиненной общественной необходимости.
84145. Материальное производство и его структура: производительные силы и производственные отношения. Характер их соотнесенности 34.15 KB
  Теория материального производства разработана марксизмом. Главной особенностью материального производства которая служит его показательным отличием от любого другого вида производства различные виды производства духовных продуктов и нематериальных благ является наличие в процессах материального производства обязательного взаимодействия человека с природой. Таким образом в процессе материального производства человек воздействует на природу с помощью какихлибо средств труда. Сырье природный материал который в процессе производства...
84146. Структура производительных сил и производственных отношений. Базис и надстройка. Роль производительных сил и техники в развитии общества 31.33 KB
  Производственные отношения. Поскольку материальное производство непредставимо без участия человека то существенным фактором процесса производства выступают связи и отношения между людьми складывающиеся в производственной деятельности. Эти связи и отношения называются производственными отношениями. ПРОИЗВОДСТВЕННЫЕ ОТНОШЕНИЯ.
84147. Социальная структура общества и этнические общности. Исторические формы социальных и сословно-классовых общностей 36.93 KB
  Социальная структура с одной стороны указывает на различное положение людей по отношению друг к другу по тем или иным критериям имущественный критерий политические права привилегии возрастные образовательные и другие критерии а с другой стороны выражает деление людей в обществе по их интересам национальные классовые профессиональные религиозные семейные и т. ЭТНОС это исторически сложившаяся на определенной территории устойчивая совокупность людей обладающих одним языком общими народным искусством обычаями обрядами...
84148. Понятие социального института. Государство как важнейший социальный институт. Его происхождение и сущность 37.3 KB
  Таким образом государство отвечает за исполнение всех социальных функций общества и если говорить о сущности государства то в социальном плане сущность государства состоит в том что государство наделено всеми социальными функциями как верховный социальный институт. Эти функции для государства делятся на внешние и на внутренние: 1. Внешние функции государства сводятся к задачам обороны страны и отстаивания ее интересов во взаимоотношениях с другими государствами. Несмотря на очевидность назначения государства и несмотря на его...
84149. Политическая система общества. Роль государства в развитии общества. Основные признаки государства. Власть и демократия 33.8 KB
  Политическая система общества это система правовых норм государственных и гражданских организаций политических отношений и традиций а также элементов политического сознания и политической культуры какоголибо общества. Политическое сознание отражающее идеологические установки и целевые устремления различных политических сил и социальных единиц. Политическую деятельность охватывающую как действия политических объединений так и деятельность конкретных людей. ПОЛИТИЧЕСКАЯ ВЛАСТЬ это способность определенных политических сил...