Logo GenDocs.ru

Поиск по сайту:  


Загрузка...

Лекции - Основы программирования на языке С++ - файл 1.doc


Лекции - Основы программирования на языке С++
скачать (910 kb.)

Доступные файлы (1):

1.doc910kb.03.12.2011 12:19скачать

содержание
Загрузка...

1.doc

1   2   3   4   5   6   7   8   9   ...   18
Реклама MarketGid:
Загрузка...

Константы


Константа- это число, символ или строка символов. Константы используются в программе как неизменяемые величины. В языке Си различают четыре типа констант: целые константы, константы с пла­вающей точкой, константы-символы и строчные литералы.
^

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


Целая константа- это десятичное, восьмеричное или шестнад­цатеричное число, которое представляет целую величину. Десятичная константа имеет следующий формат представления:

<digits>,

где <digits> - это одна или более десятичных цифр от 0 до 9.

Восьмеричная константа имеет следующий формат представле­ния:

0<odigits>,

где <odigits> - это одна или более восьмеричных цифр от 0 до 7. Запись ведущего нуля необходима.

Шестнадцатеричная константа имеет один из следующих форма­тов представления:

0x<hdigits>

0X<hdigits>,

где <hdigits> одна или более шестнадцатеричных цифр. Шестнадцатеричная цифра может быть цифрой от 0 до 9 или

буквой (большой или малой) от A до F. В представлении константы допускается "смесь" больших и малых букв. Запись ведущего нуля и следующего за ним символа x или X необходима.

Пробельные символы не допускаются между цифрами целой конс­танты. В Табл. 2.4 иллюстрируются примеры целых констант.


-----------------------------------------------------------

Десятичные Восьмеричные Шестнадцатеричные

константы константы константы

-----------------------------------------------------------

10 012 0xa или 0xA

132 0204 0x84

32179 076663 0x7dB3 или 0x7DB3

-----------------------------------------------------------

Табл. 2.4 Примеры констант
Целые константы всегда специфицируют положительные величи­ны. Если требуется отрицательные величины, то необходимо сформи­ровать константное выражение из знака минус и следующей за ним

константы. Знак минус рассматривается как арифметическая опера­ция.

Каждая целая константа специфицируется типом, определяющим ее представление в памяти и область значений. Десятичные констан­ты могут быть типа int или long.

Восьмеричные и шестнадцатеричные константы в зависимости от размера могут быть типа int, unsigned int, long или unsigned long. Если константа может быть представлена как int, она специ­фицируется типом int. Если ее величина больше, чем максимальная положительная величина, которая может быть представлена типом int, но меньше величины, которая представляется в том же самом числе бит как и int, она задается типом unsigned int. Наконец, константа, величина которой больше чем максимальная величина, представляемая типом unsigned int, задется типом long или unsigned long, если это необходимо. В Табл. 2.5 показаны диапазо-

ны величин восьмеричных и шестнадцатеричных констант, представи­мых соответствующими типами на машине, где тип int имеет длину 16 бит.

-----------------------------------------------------------

Шестнадцатеричные Восьмеричные Тип

диапазоны диапазоны

-----------------------------------------------------------

0x0-0x7FFF 0-077777 int

0x8000-0xFFFF 0100000-0177777 unsigned int

0x10000-0x7FFFFFFF 0200000-017777777777 long

0x80000000-0xFFFFFFFF 020000000000-030000000000 unsigned long

-----------------------------------------------------------

Табл. 2.5 Диапазоны величин восьмеричных и

шестнадцатеричных констант
Важность рассмотренных выше правил состоит в том, что вось­меричные и шестнадцатеричные константы не содержат "знаковых" расширений, когда они преобразуются к более длинным типам (преоб­разование типов смотри в разделе 5 "Выражения и присваивания").

Программист может определить для любой целой константы тип

long, приписав букву "l" или "L" в конец константы. В Табл. 2.6 показаны примеры целых констант.
------------------------------------------------------------

Десятичные Восьмеричные Шестнадцатеричные

константы константы константы

------------------------------------------------------------

10L 012L 0xaL или 0xAL

79l 0115l 0x4fl или 0x4Fl

------------------------------------------------------------

Табл. 2.6 Примеры целых констант типа long
^

Константы с плавающей точкой


Константа с плавающей точкой- это действительное десятичное положительное число. Величина действительного числа включает це­лую, дробную части и зкспоненту. Константы с плавающей точкой имеют следующий формат представления:

[<digits>][.<digits>][E[-]<digits>],

где <digits> - одна или более десятичных цифр (от 0 до 9),

а E или e -символ экспоненты. Целая или дробная части константы могут быть опушены, но не обе сразу. Десятичная точка может быть опущена только тогда, когда задана экспонента.

Экспонента состоит из символа экспоненты, за которым следу­ет целочисленная величина экспоненты, возможно отрицательная.

Пробельные символы не могут разделять цифры или символы

константы.

Константы с плавающей точкой всегда специфицируют положи­тельные величины. Если требуются отрицательные величины, то необ­ходимо сформировать константное выражение из знака минус и следу­ющей за ним константы. Знак минус рассматривается как арифмети­ческая операция.

Примеры констант с плавающей точкой и константных выраже-

ний:

15.75

1.575E1

1575e-2

-0.0025

-2.5e-3

25e-4

Целая часть константы с плавающей точкой может быть опуще­на, например:

.75

.0075e2

-.125

-.175E-2

Все константы с плавающей точкой имеют тип double.

Константа-символ


Константа-символ- это буква, цифра, знак пунктуации или ESC- символ, заключенные в одиночные кавычки. Величина констан­ты-символа равна значению представляющего ее кода символа.

Константа-символ имеет следующую форму представления:

'<char>',

где <char> может быть любым символом иэ множества предста­вимых символов, включая любой ESC- символ, исключая одиночную ка­вычку ('), наклонную черту влево (\) и символ новой строки.

Чтобы использовать одиночную кавычку или наклонную черту влево в качестве константы-символа, необходимо вставить перед этими знаками наклонную черту влево. Чтобы представить символ но­вой строки, необходимо использовать запись '\n'.

----------------------------------------------

Константа Название величины

----------------------------------------------

'a' Малая буква а

'?' Знак вопроса

'\b' Знак пробела

'0x1B' ASCII ESC- символ

'\'' Одиночная кавычка

'\\' Наклонная черта влево

-------------------------------------------------

Табл. 2.7 Примеры констант-символов.

Константы-символы имеют тип int.
^

Строковые литералы


Строковый литерал- это последовательность букв, цифр и сим­волов, заключенная в двойные кавычки. Строковый литерал рассмат­ривается как массив символов, каждый элемент которого представля­ет отдельный символ. Строковый литерал имеет следующую форму представления:

"<characters>" ,

где <characters> - это нуль или более символов из множества представимых символов, исключая двойную кавычку ("), наклонную черту влево (\) и символ новой строки. Чтобы использовать символ новой строки в строковом литерале, необходимо напечатать наклон­ную черту влево, а затем символ новой строки.

Наклонная черта влево вместе с символом новой строки будут проигнорированы компилятором , что позволяет формировать строко­вые литералы, располагаемые более чем в одной строке. Например, строковый литерал:

"Long strings can be bro\

cken into two pieces."

идентичен строке:

"Long strings can be brocken into two pieces."

Чтобы использовать двойные кавычки или наклонную черту вле­во внутри строкового литерала, нужно представить их с предшеству­ющей наклонной чертой влево, как показано в следующем примере:

"This is a string literal"

"First \\ Second"

"\"Yes, I do,\" she said."

"The following line shows a null string:"

""

Заметим, что ESC- символы (такие как \\ и \") могут появ­ляться в строковых литералах. Каждый ESC- символ считается одним отдельным символом.

Символы строки запоминаются в отдельных байтах памяти. Сим­вол null (\0) является отметкой конца строки. Каждая строка в программе рассматривается как отдельный об"ект. Если в программе содержатся две идентичные строки, то каждая из них будет хра­ниться в отдельном месте памяти.

Строчные литералы имеют тип char[]. Под этим подразумевает­ся, что строка- это массив, элементы которого имеют тип char. Число элементов в массиве равно числу символов в строчном литера­ле плюс один, поскольку символ null (отметка конца строки) тоже считается элементом массива.
1   2   3   4   5   6   7   8   9   ...   18



Скачать файл (910 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации
Рейтинг@Mail.ru