КАТЕГОРИИ: Архитектура-(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) |
Операции и выражения. Типизированные константы
Типизированные константы Разновидностью переменных являются типизированные константы. Это переменные, значение которых (заданное при инициализации) нельзя изменить. Создание типизированной константы ничем не отличается от инициализации переменной, за исключением того, что перед оператором объявления ставится ключевое слово const: const double Pi = 3.14159265; const int I=1, j=2, k=5; const c1=’d’; const z=0x23A1; //шестнадцатеричная константа const x=0123; //восьмеричная константа Типизированные константы отличаются от символических констант: ü типизированная константа по своему смыслу относится к конкретному типу данных, поэтому компилятор генерирует совершенно определенное представление для ее значения. Представление символической константы не определено. ü имя символической константы значимо только на этапе препроцессорной обработки исходного кода, поэтому компилятор не включает ее в отладочную информацию объектного модуля. Вы не можете использовать это имя в выражениях при отладке. Напротив, типизированные константы являются по существу переменными, и их имена доступны отладчику. В силу этих причин предпочтительнее применять для представления постоянных величин типизированные константы, а не макросы #define. Время существования или время жизни переменной бывает: ü Локальное – существование переменной в пределах блока, в котором она описана; ü Глобальное – при выполнении всей программы. Управлять видимостью переменных можно либо изменением места объявления переменной в программе, либо использованием модификаторов: Auto – автоматическая (по умолчанию) переменная (локальная). Она действует внутри блока, в котором определена. Под нее выделяется временная память при входе в блок, а при выходе память освобождается, т.е. переменная уничтожается;
Register – регистровая. Хранится в регистре процессора. Доступ к ней быстрее, чем к автоматической. Extern – внешняя глобальная переменная. Она видна во всей программе. Static – статическая переменная. Память ей выделяется после объявления и сохраняется до конца программы. Она видна в пределах блока, в котором описана.
Знак равенства также является операцией присваивания, которая сама (и, соответственно, все выражение в целом) возвращает значение. В этом отличие С от других языков, в частности Pascal, где присваивание является оператором а не операцией. Оператором выражение станет, если поставить после него точку с запятой. В следующей таблице дана сводка всех операций языка С в порядке убывания приоритета.
Дата добавления: 2014-01-06; Просмотров: 288; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |