Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Язык Си.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
868 Кб
Скачать
☆

Int n; // Переменная n целого типа double a; // Переменная a вещественного типа двойной точности

Константы и переменные в языке Си

Главная > Язык Си > Константы и переменные в языке Си

Константа — это ограниченная последовательность символов алфавита языка, представляющая собой изображение фиксированного (неизменяемого) объекта.

Константы бывают числовые, символьные и строковые. Числовые константы делятся на целочисленные и вещественные.

Целочисленные константы

Целочисленные данные в языке Си могут быть представлены в одной из следующих систем счисления:

Десятичные

Последовательность цифр (0 — 9), которая начинаются с цифры, отличной от нуля. Пример: 1, -29, 385. Исключение — число 0.

Восьмеричные

Последовательность цифр (0 — 7), которая всегда начинается с 0. Пример: 00, 071, -052, -03.

Шестнадцатеричные

Последовательность шестнадцатеричных цифр (0 — 9 и A — F), которой предшествует присутствует 0x. Пример: 0x0, 0x1, -0x2AF, 0x17.

Двоичная система представления данных непосредственно в языке Си не поддерживается. Однако можно воспользоваться файлом binary.h, в котором определены двоичные константы в пределах байта.

Пример использования двоичной системы счисления в языке Си:

#include <stdio.h> #include "binary.h" int main() {

  unsigned char p = b10001001 | b00001010; // p=b10001011=139

  printf("p = %dd = %xh", p, p);

  getchar(); getchar();

  return 0; }

Результат выполнения В зависимости от значения целой константы компилятор присваивает ей тот или иной тип (char, int, long int).

С помощью суффикса U (или u) можно представить целую константу в виде беззнакового целого.

Например, Константе 200U выделяется 1 байт, и старший бит используется для представления одного из разрядов кода числа и диапазон значений становится от 0 до 255. Суффикс L (или l) позволяет выделить целой константе 8 байт (long int).

Совместное использование в любом порядке суффиксов U (или u) и L (или l) позволяет приписать целой константе тип unsigned long int, и она займет в памяти 64 разряда, причем знаковый разряд будет использоваться для представления разряда кода (а не знака).

Вещественные константы

Константа с плавающей точкой (вещественная константа) всегда представляется числом с плавающей точкой двойной точности, т. е. как имеющая тип double, и состоит из следующих частей:

  • целой части — последовательности цифр;

  • точки - разделителя целой и дробной части;

  • дробной части — последовательности цифр;

  • символа экспоненты е или E;

  • экспоненты в виде целой константы (может быть со знаком).

Любая часть (но не обе сразу) из нижеследующих пар может быть опущена:

  • целая или дробная часть;

  • точка или символ е (Е) и экспонента в виде целой константы.

Примеры вещественных констант 345. 3.14159 2.1Е5 .123ЕЗ 4037е-5 По умолчанию компилятор присваивает вещественному числу тип double. Если программиста не устраивает тип, который компилятор приписывает константе, то тип можно явно указать в записи константы с помощью следующих суффиксов: F (или f) — float для простых вещественных констант, L (или l) — long double для вещественных констант двойной расширенной точности.

Примеры: · 3.14159F — константа типа float, занимающая 4 байта; · 3.14L — константа типа long double, занимающая 10 байт.