Шаг 7 - Литеры и целые константы

Под литерами понимаются константы, которые могут содержать данные следующих типов.

Константы целые числа являются постоянными элементами данных, которые не имеют дробной части или показателя. Они всегда начинаются с цифры. Можно определять константы в

Они могут быть со знаком или без и иметь разный тип. Итак.

Десятичная константа начинается с любой ненулевой цифры, то есть 1 2 3 4 5 6 7 8 9 и состоит из любых других цифр 0 1 2 3 4 5 6 7 8 9

Восмеричная константа начинается с 0 и может состоять из любых цифр 0 1 2 3 4 5 6 7.

Шестнадцатеричная константа начинается с 0x и может состоять из следующих цифр и букв 0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F.

Для обозначения типа констант применяются суффиксы:

u U   - беззнаковое
l L   - длинное
i64   - целое 64 бита

Давайте посмотрим пример:

int x=234;
int x1=0234;
int x2=099;

Первое определение это десятичная цифра. Второе восмеричная цифра, а вот третье определение ошибочно и компилятор даст сообщение типа:

D:\Project\2\2.cpp(14) : error C2041: illegal digit '9' for base '8'
D:\Project\2\2.cpp(14) : error C2041: illegal digit '9' for base '8'

При определении шестнадцатеричных констант регистр символов не имеет значения. Эти константы совершенно одинаковые.

int x1=0xFFF;
int x2=0Xfff;

Модификаторы позволяют определять числа со знаком или без, а так же размер числа. Модификатор добавляется в конец. Можно использовать сразу несколько модификаторов.

unsigned x = 328u;		// без знака
unsigned x1 = 328ul;	// длинное целове без знака

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 19.04.2000