Стивен Прата - Язык программирования C. Лекции и упражнения (6-е изд.) 2015

Тут можно читать онлайн Стивен Прата - Язык программирования C. Лекции и упражнения (6-е изд.) 2015 - бесплатно полную версию книги (целиком) без сокращений. Жанр: Прочая старинная литература, издательство Вильямс, год 0101. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.

Стивен Прата - Язык программирования C. Лекции и упражнения (6-е изд.) 2015 краткое содержание

Язык программирования C. Лекции и упражнения (6-е изд.) 2015 - описание и краткое содержание, автор Стивен Прата, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Язык программирования C. Лекции и упражнения (6-е изд.) 2015 - читать онлайн бесплатно полную версию (весь текст целиком)

Язык программирования C. Лекции и упражнения (6-е изд.) 2015 - читать книгу онлайн бесплатно, автор Стивен Прата
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

126 глава 4 Можно применять прописные и строчные буквы цифры и символ - фото 78

126 глава 4

Можно применять прописные и строчные буквы, цифры и символ подчеркивания. Первый символ не может быть цифрой. В листинге 4.4 приведен простой пример.

Листинг 4.4. Программа pizza.с

Спецификатор 12f в операторе printf вызывает округление при выводе до двух - фото 79

Спецификатор %1.2f в операторе printf() вызывает округление при выводе до двух десятичных позиций. Конечно, эта программа может не отражать все характе ристики пиццы, представляющие для вас интерес, но она заполняет небольшую нишу в мире программ, имеющих отношение к пицце. Вот пример выполнения этой программы:

Каков радиус вашей пиццы?

6.0

Основные параметры вашей пиццы:

длина окружности = 37.70, площадь = 113.10

Директиву #define можно использовать также для объявления символьных и строковых констант. Достаточно указать одиночные кавычки для символьных и двойные кавычки для строковых констант. Ниже приведены допустимые объявления констант:

#define ВЕЕР ‘\а '

#define TEE 'Т'

#define ESC '\033 '

#define OOPS "Теперь вы сделали это!"

Не забывайте, что любые данные, указанные за символическим именем, будут замещать его. Остерегайтесь распространенной ошибки:

/* следующее определение некорректно */

#define TOES = 20

Если поступить так, то константа TOES будет заменена последовательностью =2 0, а не просто 20. В этом случае оператор следующего вида:

digits = fingers + TOES; преобразуется в такое ошибочное представление:

digits = fingers + = 20;

Символьные строки и форматированный ввод-вывод 127

модификатор const

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

const int MONTHS = 12; // MONTHS является символической константой для 12

Такое объявление делает MONTHS значением только для чтения. Это означает, что вы можете отображать MONTHS на экране и применять его в вычислениях, но не модифицировать значение MONTHS. Новый подход более гибок, чем прием с директивой #define; он позволяет объявить тип и обеспечивает больший контроль над тем, в каких частях программы может использоваться константа. В главе 12 обсуждается этот и другие способы применения модификатора const.

На самом деле, как будет показано в главе 14, в языке С имеется еще и третий способ создания символических констант — использование enum.

Работа с символическими константами

Заголовочные файлы limits.h и float.h содержат подробную информацию об ограничениях размеров, соответственно, целочисленных типов и типов с плавающей запятой. В каждом файле определена последовательность символических констант, которые применяются к реализации. Например, файл limits.h содержит строки, подобные следующим:

#define INT_MAX +32767

#define INT_MIN -32768

Эти константы представляют наибольшее и наименьшее возможные значения для типа int. Если в вашей системе используется 32-битный тип int, то данный файл предоставит другие значения для таких символических констант. В файле limits.h определены минимальные и максимальные значения для всех целочисленных типов. После включения файла limits.h вы можете применять такой код:

printf("Максимальное значение типа int в этой системе составляет %d\n", INT_MAX);

Если в системе используется четырехбайтный тип int, то файл limits.h, который поступает с этой системой, предоставит определения для INT MAX и INT MIN, соответствующие пределам четырехбайтного типа int. В табл. 4.1 приведен список некоторых констант, находящихся в файле limits.h.

Таблица 4.1. Некоторые символические константы из файла limits.h

128 Глава 4 Окончание табл 41 Аналогично в файле floath определены такие - фото 80

128 Глава 4

Окончание табл. 4.1

Аналогично в файле floath определены такие константы как FLTDIG и DBLDIG - фото 81

Аналогично, в файле float.h определены такие константы, как FLT_DIG и DBL_DIG, которые представляют количество значащих цифр, поддерживаемое типами float и double. В табл. 4.2 перечислены некоторые константы, определенные в файле float.h. (Можете открыть в текстовом редакторе заголовочный файл float.h, доступный в вашей системе, и ознакомиться с его содержимым.) Здесь приводятся только данные для типа float. Эквивалентные константы определены для типов double и long double; в их именах вместо FLT применяются строки DBL и LDBL. (В табл. 4.2 предполагается, что в системе числа с плавающей запятой представлены степенями 2.)

Таблица 4.2. Некоторые символические константы из файла float.h

В листинге 45 демонстрируется использование данных из floath и limitsh - фото 82

В листинге 4.5 демонстрируется использование данных из float.h и limits.h. (Следует отметить, что компилятор, который не полностью поддерживает стандарт С99, может не принять идентификатор LONG_MIN.)

Символьные строки и форматированный ввод-вывод 129

Листинг 4.5. Программа defines. с

Ниже показан пример вывода Некоторые пределы чисел для данной системы - фото 83

Ниже показан пример вывода:

Некоторые пределы чисел для данной системы:

Наибольшее значение типа int: 2147483647

Наименьшее значение типа long long: -9223372036854775808

В данной системе один байт = 8 битов.

Наибольшее значение типа double: 1, 797693е + 308

Наименьшее нормализованное значение типа float: 1,175494е-38

Точность значений типа float = 6 знаков

Разница между 1.00 и минимальным значением float, которое больше 1.00 =

1.192093е-07

Препроцессор С является полезным и удобным инструментом, так что применяйте его везде, где это возможно. Далее в книге вы увидите и другие случаи его использования.

Исследование и эксплуатация

ФУНКЦИЙ printf() И scanf()

Функции printf() и scanf() позволяют организовать взаимодействие с программой и называются функциями ввода-вывода. В языке С доступны и другие функции ввода-вывода, но printf() и scanf() являются наиболее универсальными. Исторически сложилось так, что они, как и все остальные функции в библиотеке С, не были частью определения языка. Первоначально язык С оставлял реализацию средств ввода-вывода разработчикам компиляторов; это делало возможным лучшее соответствие функций ввода-вывода конкретным машинам. В интересах совместимости различные реализации поставлялись со своими версиями функций scanf() и printf(). Тем не менее, между реализациями встречались некоторые расхождения. В С90 и С99 описаны стандартные версии этих функций, и именно их мы будем придерживаться.

Хотя printf() является функцией вывода, a scanf() — функцией ввода, обе они работают очень похожим образом, используя управляющую строку и список аргументов. Давайте рассмотрим по очереди printf() и scanf().

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Стивен Прата читать все книги автора по порядку

Стивен Прата - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Язык программирования C. Лекции и упражнения (6-е изд.) 2015 отзывы


Отзывы читателей о книге Язык программирования C. Лекции и упражнения (6-е изд.) 2015, автор: Стивен Прата. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x