КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Пример взаимодействия функций с использованием глобальных переменных
Пример взаимодействия функций без использования глобальных переменных Результат работы программы Пример Результат работы программы Пример программы Глобальные и локальные объекты Результат работы программы Пример Результат работы программы Пример Пример программы Общая форма записи sizeof(объект)
Операция «запятая» («,») предназначена для связывания между собой выражений. Список, разделенный запятой, трактуется как единое выражение и вычисляется слева направо.
Значение у=12 main() { int i, b; for (i=0, b=l; i <= 5; i++ { b=b+i; printf("\n Значение b=%d.",b);
Значение b=l Значение b=2 Значение b=3
Глобальными называются объекты, объявление которых дано вне функции. Они доступны (видимы) во всём файле, в котором они объявлены, а также во всех внешних файлах (модулях). Локальными называются объекты, объявление которых дано внутри функции. Эти объекты доступны только внутри той функции, в которой они объявлены. В Си существует понятие времени жизни объекта, которое бывает глобальным или локальным. Объект с глобальным временем жизни характеризуется тем, что в течение всего периода выполнения программы с ним связана определённая ячейка оперативной памяти и какое-то значение. Объекту с локальным временем жизни выделяется новая ячейка оперативной памяти при каждом вхождении в блок, в котором объявлен этот объект. Когда выполнение блока завершается, память, выделенная под локальный объект, освобождается, и объект теряет своё значение. #include <stdio.h> void autofunc(void) { int k=l; printf("\n k = %u", k); k=k+l; } main() { int i; for(i = 0; i<=5; i++) autofunc(); }
Если в примере объявить переменную к как глобальную, результат работы программы будет иным.
к = б Замечание: глобальные переменные нужны для того, чтобы организовывать обмен информацией между функциями.
Программа имеет недостаток: функция func не имеет формальных параметров, обмен информацией между функциями организован через глобальные переменные х\, х2. Существует опасность, что переменные х\, х2 будут случайно изменены в вызываемой функции.
Дата добавления: 2014-11-29; Просмотров: 370; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |