Главная » Просмотр файлов » Г. Шилдт - Полный справочник по C++

Г. Шилдт - Полный справочник по C++ (1109478), страница 11

Файл №1109478 Г. Шилдт - Полный справочник по C++ (Г. Шилдт - Полный справочник по C++) 11 страницаГ. Шилдт - Полный справочник по C++ (1109478) страница 112019-04-28СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 11)

Основы языка Св Н подмножество С Лрнверм констант тна данных 1 123 21000 -234 3800ОЬ -341 100000 8870 400000 123.238 4.34е-зг 123.23 1.0 -0.8878324 1001.21, :пс сед зпс епвуспегз ЫС 81сае 'сцЬ1е !сед с!сиЬ|е Й)естнадцатеричные и восьмеричные константы Иногла позиционные системы счисления по основанию 8 или 16 оказываются удобнее, чем обычная лесятнчная система Позиционная система счисления по основанию 8 называется носьнернчной (ос!а)), В ней используются цифры от 0 ло 7. Числа в восьмеричной синема раскладываются по степеням числа 8.

Система счисления с основанием !6 называется и/егтнг/дйа/леричнои (йехас1есппа1). В неи гзспользуются цифры от 0 до 9 и буквы от А до Е, которые соответствуют числам !О, 11, 12, !3, 14 и 15 Например, шестнадцатеричное число 10 в десятичной системе равно 16. Поскольку эти системы счисления применяются очень часто, в языке С/С+-л предусмотрены средства лля предстзш1ения щестнатцзтеричных и восьмеричных констант. Для э|ого перед шестнадцатеричным числом указывается префикс ох. Восьмеричные консзанты нзчинаюгся с нуля Рассмотрим несколько примеров. .' * впс Ьех = Ох80; /* 128 в десятичной системе */ 1дс осе = 012; /* 10 в десятичиси системе */ Строковые константы В языке С/Сл ь есть еше один внл констант — строковые. Сглрока (мпп8) — это последовательность символов, заключенная в двойные кавычки. Например, "пример строки" — зто строка. Мы уже вплели примеры использования строк, когла применялн функцию ртдпед().

Несмотря на то что в языке С можно опрелелять строковые константы, строго говоря, в нем нет отдельного типа данных для строк. (В то же время, в языке С++ существует стандартный класс ветдпя.) Глава 2. Выражения Целочисленные константы считаются числами, не имеющими дробнои части. 1-1апрнмер, числа 10 и — 100 являются целочисленными константами. Константы с плаалющеи точкой содержат дробную часть, которая отделяется десятичной точкой.

Например, число ! 1 123 представляет собой константу с плавающей точкой. Кроме того, в языке С++ числа с плаваюьчей точкои можно представлять с помощью научного формата. В языке С предусмотрено два пп1а для прелставления чисел с плавающей точкои: езоае и йопЬ1в. Используя модификаторы, можно созлать еще несколько вариантов основных типов. Г10 умолчани10 компилятор приводит числовые константы к наименыцему полхоляшел1у типу.

Такил~ образом, если предположить, что целое число юнимает 16 бит, то число 10 по умолчанию плавает тип хте, а число 103000 — тип 1опд Несмотря на то что число ! О можно привести к символьному типу, компилятор не нарушит границы типов Елинственное исключение из этого правила прелставляет собой константа с плаваюн!ей точкой„которая по умолчанию имеет тип 4(оиЬ1в.

В большинстве программ соглашения, принятые по умолчанию, являются вполне рззулшыми. Олнако, используя суффиксы, типы констант люжно задавать явно. Если после константы с плавающей точкой поставить суффикс в, она будет иметь тип 81оае. Если вместо буквы в поставить букву ь, константа получит тип 1опд ПозЬ1в. Лля целочисленных типов суффикс Б означает впв1япвет, а суффикс ь — 1опя. Вот несколько примеров на эту тему Не следует путать символы и строки. Отдельная символьная константа заключается в одинарные кавычки, например 'е'. Если заключить букву а в двойные кавычки, получим строку "а", состоящую из одной буквы. Управляющие символьные константы Практически все символы можно вывести на печать, заключив их в одиночные кавычки.

Однако некоторые символы, например, символ перехода на новую строку, невозлюжно ввести в строку с клавиатуры. Для этого в языке С/С++ предусмотрены специальные управляющие символьные констинты (Ьасйз!акЬ сЬагасгег сопкгапгк), указанные в табл. 2.2. Они называются эскеил-логледовательносюями (ексаре зеццепсез). Для того чтобы гарантировать л1ашинонезависимость„необходимо использовать не АНСИ-коды, эквивалентные управляюшим символьным константам, а именно эскейп-последовательности.

Кол Программа, приведенная ниже, выполняет переход на новую строку, выводит символ табуляции, а затем печатает строку "Проверка вывода". ))1лс1ис)е кеебьо.н> ьлс гкатп!чоМ) ! ртьлск!"1лтспроверка вывода."); тексел Ок ) ~:3 Операторы В языке С/С++ предусмотрено большое количество операторов. В этих языках операторам улеляется гораздо больше внил1ания, чем в большинстве лругих языков. Операторы разделяются на четыре основные группы: арифметические (ап)Ьпзег)с), сравнения (ге!айопа1), логические (!оя)са1) и побил)овые (Ыгзт)зе).

Кроме того, для конкретных целей предусмотрено еше не~колько специальных операторов. Часть !. Основы языка С++: подмножество С Таблица 2.2. Управляющие символьные константы ть ъе Ъо те тс ъо тт те тт тм тмв Пробел Прогон бумаги Новая строка Возцзат каретки Горизонтальная табуляция Двойная кавычка Одинарная кавычка Нуль Обратная косая черта Вертикальная табуляция Звуковой сигнал Знак вопроса Восьмеричная константа и Шестнадцатеричная константа и Оператор присваивания Оператор присваивания можно использовать в лк»бом корректном выражении.

В языке С/С++ (в отличие от многих языков программирования, включая Разса1, ВАЯС и РОВТВАХ) оператор присваивания не считается особенным. Общий вид оператора присваивания выглядит следующим образом. имн переменной = вырижение) Здесь выражение может состоять как из отдельной константы, так и комбинации сложных операторов. В качестве оператора присваивания в языке С/С++ используется знак равенства (отличие от языков Разов! и Мо»)ц!а-2, в которых оператор присваивания обозначается символами: ). Цель (!а?8е»), или левая часть оператора присваивания, должна быть либо переменной, либо указателем, но не функцией или константой. Часто в книгах о языке С/С++ и в сообщениях компилятора встречаются два термина: 1та1це и гта!це.

Термин /уа/ие означает любой объект, который может стоять в левой части оператора присваивания. С практической точки зрения термин 1уа1це относится к переменным. Термином гга!ие называют выражение, стоящее в правой части оператора присваивания, точнее говоря, значение этого выражения. Преобразования типов в операторе присваивания Когда в выражении смешиваются переменные разных типов, необходимо выполнить нреобразование клинов (гуре сопуегз!оп). Для оператора присваивания правило преобразования типов формулируется просто: значение правой части (гта!ие) преобразовывается к типу левой части (1та!це). Рассмотрим конкретный пример.

йпс х; с?»ак с»»» й?оае й; той»? йопс(той»?? с?» = х; /* Строка 1 */ х = й» /* Строка 2 */ й = с?н /* Строка 3 */ й = х» /* Строка 4 */ 1 В строке 1 левый старший разряд целой переменной х отбрасывается, и переменной е?» присваиваются 8 младших битов Если значение переменной х изменяется от 0 до 255, то переменные с?» и х будут эквивалентными. (Это относится лишь к тем компиляторам, в которых переменные типа с?»ак по умолчанию не имеют знака.

Если тип с?»ак по умолчанию имеет знак, то переменные с?» и х будут эквивалентными, только если переменная х изменяется от -128 до !27 либо переменная сь имеет тип ппайяпа»? с?»ак — Прим. ре»).) В противном случае в переменной с?» буду? учтены лишь 8 младших бит переменной х. В строке 2 переменной х будет присвоена целая часть переменной й. В строке 3 восьмибитовое целое число, хранящееся в переменой е?», будет преобразовано в число с плавающей точкой.

То же самое произойдет и в строке 4, только теперь в число с плавающей точкой будет преобразовано целочисленное значение переменной х. В процессе преобразования типа йпе в тип с?»ак и типа 1опя йпс в тип йпе старшие разряды отбрасываются. Во многих 16-битовых операционных системах это означает, что 8 бит будет потеряно. В 32-разрядных операционных системах при преобра- Глава 2. Выражения зовании типа 1пе в тип снах будет потеряно 24 бит, а при преобразовании типа 1пе в тип вЬохе 1.пе — 1б бит. Правила преобразования типов ауммированы в табл. 2.3.

Помните, что преобразование типа 1пе в тип 61оае, типа 61оае в тип гзопь1а и так далее не увеличивает точности. Этот вид преобразований лишь изменяет способ представления числа. Кроме того, некоторые компиляторы при преобразовании типа сЬех в тип зпе или Х1оае по умолчанию считают тип сЬах не имеющим знака, независимо от значения переменной. Другие компиляторы преобразовывают значения символьных переменных, превышающие !27, в отрицательные числа. Итак, если вы хотите избежать проблем, для работы с символами следует использовать тип снах, а для работы с целыми числами — тип зпс, вЬохс зпе или вздпво сЬвх, Если вам необходимо выполнить преобразование типа, не указанное в табл.

2.3, преобразуйте его сначала в промежуточный тип, который есть в таблице, а затем— в результирующий тип. Например, чтобы преобразовать тип йопбзв в тип зпе, сначала следует преобразовать тип С(опЬ1а в тип 61оае, а затем тип 61оае — в тип зпе. (Разумеется, зто относится лишь к анализу возможных потерь точности. Любой компилятор совершенно авободно выполнит преобразование типа гзооь1в в тип 1пе, не требуя промежуточных преобразований. — Прим. рвдй Таблица 2.3. Правила преобразовании типов Резульгкруаьтнй п(п Тип выражения йоэиожные пегврн всдпеб спас асаг снас ссаг сепг виста пе в1-.асс гпс 1п( (16 бнт) сгс (32 бнг) гпс 61сас йссше Множественные присваивания В языке С/С++ разрешается присваивать одно и то же значение нескольким переменным одновременно Например, во фрагменте програмк(ы, приведенном ниже, переменным в, у и в одновременно присваивается число О. йх=у>с=о; Такой способ присваивания часто применяетая в профессиональных программах.

Характеристики

Тип файла
DJVU-файл
Размер
7,03 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6461
Авторов
на СтудИзбе
304
Средний доход
с одного платного файла
Обучение Подробнее