ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Типы данных на языке си. В языке Си предусмотрено несколько основных типовобъектов: Символьный. - Объекты, описанные как символы (char), достаточновелики, чтобы хранить любой член из соответствующего данной реализации внутреннего набора символов, и если действительный символ из этого набора символов хра- нится в символьной переменной, то ее значение эквива- лентно целому коду этого символа. В символьных пере- менных можно хранить и другие величины, но реализация будет машинно-зависимой. (На СМ ЭВМ значение символь-ных переменных изменяется от -0177 до 0177.) Целый. - Можно использовать до трех размеров целых, описывае- мыхкак short int, int и long int. Длинные целые занимают не меньше памяти, чем короткие, но в конк- ретной реализации может оказаться, что либо короткие целые, либо длинные целые, либо те и другие будутэквивалентны простым целым. "Простые" целые имеют естественный размер, предусматриваемый архитектурой используемой машины; другие размеры вводятся для удовлетворения специальных потребностей. Беззнаковый. - Целые без знака, описываемые как unsigned, подчиня- ются законам арифметики по модулю 2**n, где n - число битов в их представлении. (На CM-ЭВМ длинные вели- чины без знака не предусмотрены). Вещественный. - Вещественные одинарной точности (float) и веществен- ные двойной точности (double) в некоторых реализациях могут быть синонимами. (На СМ ЭВМ float занимает 32 бита памяти, а double - 64).
Базовые типы В языке Си используются всего два базовых типа: целые и вещественные числа. Кроме того, имеется фиктивный тип void("пустота"), который применяется либо для функции, не возвращающей никакого значения, либо для описания указателя общего типа (когда неизвестна информация о типе объекта, на который ссылается указатель). В C++ добавлен логический тип. Целочисленные типы Целочисленные типы различаются по длине в байтах и по наличию знака. Их четыре - char, short, int и long. Кроме того, к описанию можно добавлять модификаторы unsigned или signed для беззнаковых (неотрицательных) или знаковых целых чисел. Тип int Самый естественный целочисленный тип - это тип int, от слова integer - целое число. Тип int всегда соответствует размеру машинного слова или адреса. Все действия с элементами типа int производятся максимально быстро. Всегда следует выбирать именно тип int, если использование других целочисленных типов не диктуется явно спецификой решаемой задачи. Параметры большинства стандартных функций, работающих с целыми числами или символами, имеют тип int. Целочисленные типы были подробно рассмотрены в лекции 2. Подчеркнем еще раз, что целочисленные переменные хранят на самом деле не целые числа, а элементы кольца вычетов по модулю m, где m - степень двойки. В современных архитектурах элемент типа int занимает 4 байта, т.е. m = 232. Элементы типа int трактуются в Си как числа со знаком. Минимальное отрицательное число равно -231 = -2147483648, максимальное положительное равно 231-1 = 2147483647. При описании переменной сначала указывается базовый тип, затем - имя переменной или список имен, разделенных запятыми, например, int x;int y, z, t;При описании переменных можно присваивать им начальные значения: int maxind = 1000;int a = 5, b = 7;Кроме типа int, существуют еще три целочисленных типа: char, short и long. Тип char Тип char представляет целые числа в диапазоне от -128 до 127. Элементы типа char занимают один байт памяти. Слово " char " является сокращением отcharacter, что в переводе означает "символ". Действительно, традиционно символы представляются их целочисленными кодами, а код символа занимает один байт (см. лекцию 3). Тем не менее, подчеркнем, что элементы типа char - это именно целые числа, с ними можно выполнять все арифметические операции. С математической точки зрения, элементы типа char - это элементы кольца вычетов m = Z256. Стандарт Си не устанавливает, трактуются ли элементы типа char как знаковые или беззнаковые числа, но большинство Си-компиляторов считают char знаковым типом. Примеры описаний переменных типа char: char c;chareof = (-1);charletterA = 'A';В последнем случае значение переменной " letterA " инициализируется кодом латинской буквы 'A', т.е. целым числом 65. В Си символьные константы записываются в одинарных апострофах и означают коды соответствующих символов в кодировке ASCII. Рассмотрим следующий пример: char c = 0;char d = '0';Здесь переменная c инициализируется нулевым значением, а переменная d - значением 48, поскольку символ '0' имеет код 48. Типы short и long Слова short и long означают в Си короткое и длинное целое число со знаком. Стандарт Си не устанавливает конкретных размеров для типов short и long. В самой распространенной в настоящее время 32-разрядной архитектуре переменная типа short занимает 2 байта (диапазон значений - от -32768 до 32767), а типlong совпадает с типом int, размер его равен четырем байтам. Примеры описаний: short s = 30000;long x = 100000;int y = 100000;В 32-разрядной архитектуре переменные x и y имеют один и тот же тип. Не нашли, что искали? Воспользуйтесь поиском:
|