КАТЕГОРИИ: Архитектура-(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) |
Основные типы данных
Переменные и константы. Типы данных Ошибки Ошибки, допускаемые при написании программ, разделяют на синтаксические и логические. Синтаксические ошибки - нарушение формальных правил написания программы на конкретном языке, обнаруживаются на этапе трансляции и могут быть легко исправлены. Программа, содержащая синтаксическую ошибку, не может быть запущена. При попытке ее компиляции выдается сообщение, обычно содержащее указание того места в тексте, "дочитав" до которого, компилятор заметил ошибку; сама ошибка может быть как в этом месте, так и выше него (часто - в предыдущей строке). Логические ошибки делят на ошибки алгоритма и семантические ошибки - могут быть найдены и исправлены только разработчиком программы. Причина ошибки алгоритма - несоответствие построенного алгоритма ходу получения конечного результата сформулированной задачи. Причина семантической ошибки - неправильное понимание смысла (семантики) операторов языка. Программа, содержащая логическую ошибку, может быть запущена. Однако она либо выдает неверный результат, либо даже завершается "аварийно" из-за попытки выполнить недопустимую операцию (например, деление на 0) - в таком случае выдается сообщение об ошибке времени выполнения. Поиск места в программе, содержащего логическую ошибку, является непростой задачей; он носит название отладки программы.
Для программиста на языке Си память компьютера представляется как набор ячеек, каждая из которых называется переменной, или константой, в зависимости от того, меняется ее значение в процессе работы или нет. Каждая переменная имеет имя (идентификатор, ID). Константа может иметь или не иметь имени. Род информации, которую способна хранить ячейка, определяется ее типом.
Данные в языке Си разделяются на две категории: простые (скалярные), будем их называть базовыми, и сложные (составные) типы данных. Тип данных определяет: •внутреннее представление данных в оперативной памяти; •совокупность значений (диапазон), которые могут принимать данные этого типа; •набор операций, которые допустимы над такими данными.
Основные типы базовых данных: целый – int, вещественный с одинарной точностью – float и символьный – char. В свою очередь, данные целого типа могут быть короткими – short, а также длинными – long и еще более длинными - long long. Кроме того, при любой длине данные целых и символьного типов могут быть знаковыми - signed либо беззнаковыми – unsigned (по умолчанию они считаются знаковыми, поэтому слово signed необязательно и обычно опускается). Вещественные же данные могут иметь удвоенную точность – double или еще большую точность - long double. В языке С++ введен также логический тип bool. Данные этого типа могут принимать лишь два значения: true (истина) и false (ложь).
Сложные типы данных – массивы, структуры – struct, объединения или смеси – union.
Данные целых и вещественных типов находятся в определенных диапазонах, т.к. занимают разный объем оперативной памяти. Вещественные типы при этом обладают еще конечной точностью хранения данных, т.е. верно хранят лишь первые несколько цифр числа; для хранения остальных (чье количество бывает даже бесконечным - например, у числа π, или у числа ⅓) не хватает места. В Табл. 1. приведены свойства различных типов для системы программирования C++ Builder. В других системах программирования, поддерживающих язык Си, может отличаться размер того или иного конкретного типа, например int, и соответственно будет отличаться его допустимый диапазон значений (например, тип long int может превосходить по размеру тип int). Однако последовательность возрастания размеров и точности для каждой группы типов всегда одинакова: char ≤ short int ≤ int ≤ long int ≤ long long int float ≤ double ≤ long double
Таблица 1.
Заметим, что для целочисленных типов данных, чье название содержит слово int и еще какое-либо слово перед ним, слово int можно не писать, и обычно оно опускается (в Табл.1 необязательное int указано мелким шрифтом). 2.2. Декларация (объявление) объектов Все объекты (переменные, функции и пр.), с которыми работает программа, в языке Си необходимо декларировать, т.е. объявить компилятору об их присутствии в программе. При этом возможны две формы декларации: - описание, не приводящее к выделению памяти; - определение, при котором под объект будет выделен объем оперативной памяти, в соответствии с его типом; в этом случае объект можно сразу инициализировать, т.е. задать его начальное значение. Кроме констант, которые можно задавать в исходном тексте, все объекты программы должны быть явно декларированы по следующему формату: <атрибуты> <список ID объектов>; элементы списка разделяются запятыми, а атрибуты - разделителями. Например: int i,j,k; float a,b; Объекты программы в общем случае имеют следующие атрибуты: <класс памяти> - характеристика способа размещения объектов в памяти (статическая, динамическая), определяет область видимости и время жизни переменной (по умолчанию - auto), данные атрибуты будут рассмотрены позже; <тип> - характеристика механизма интерпретации данных, т.е. это совокупность информации о том, сколько объекту нужно выделить памяти, какой вид имеет представление информации и какие действия над ней допустимы (по умолчанию - int). Класс памяти и тип – атрибуты необязательные и могут отсутствовать, тогда их значения установятся по умолчанию. Примеры декларации простых переменных: int i,j,k; char r; double gfd;
Дата добавления: 2014-01-07; Просмотров: 524; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |