Диапазон шестнадцатеричных констант
|
Диапазон восьмеричных констант
|
Тип
|
0x0 - 0x7FFF
|
0 - 077777
|
int
|
0X8000 - 0XFFFF
|
0100000 - 0177777
|
unsigned int
|
0X10000 - 0X7FFFFFFF
|
0200000 - 017777777777
|
long
|
0X80000000 - 0XFFFFFFFF
|
020000000000 - 037777777777
|
unsigned long
|
Для того чтобы любую целую константу определить типом long, достаточно в конце константы поставить букву «l» или «L».
Пример: 5l, 6l, 128L, 0105L, OX2A11L.
Отметим также, что восьмеричные и шестнадцатеричные константы также могут иметь модификатор unsigned. Это достигается указанием префикса u или U после константы, константа без этого префикса считается знаковой. Если Константы с указанным префиксом называются явно заданными.
Например:
const I= 0xA8C; // константа типа int signed
const L= 01786l; // константа типа long signed
int u= 0xF7u; // переменная типа int unsigned
Символьная константа
Символьная константа - представляется символом заключенном в апострофы. Символьные константы имеют тип int и при преобразовании типов дополняются знаком. Некоторые неграфические символы, одиночная кавычка ' и обратная косая \, могут быть представлены в соответствие с таблицей escape-последовательностей (табл.4). Управляющая последовательность рассматривается как одиночный символ, допустимо ее использовать в символьных константах. Значением символьной константы является числовой код символа.
Примеры:
' '- пробел , 'Q'- буква Q , '\n' - символ новой строки ,
'\\' - обратная дробная черта , '\v' - вертикальная табуляция .
Отметим тот факт, что, если обратная дробная черта предшествует символу не являющемуся управляющей последовательностью (т.е. не включенному в табл.4) и не являющемуся цифрой, то эта черта игнорируется, а сам символ представляется как литеральный.
Например:
символ \h представляется символом h в строковой или символьной константе.
Достарыңызбен бөлісу: |