Язык программирования C [Лекции и упражнения, 6-е изд.] - [14]

Шрифт
Интервал

Вопросы для самоконтроля                                                                                                             656

Упражнения по программированию                                                                                              658

Глава 16. Препроцессор и библиотека С                                                                                     661

Первые шаги в трансляции программы                                                                                        662

Символические константы: #define                                                                                               663

Лексемы                                                                                                                                           666

Переопределение констант                                                                                                       667

Использование аргументов в директиве #define                                                                        667


16 Содержание

Создание строк из аргументов макроса: операция #                                                         670

Средство слияния препроцессора: операция # #                                                                671

Макросы с переменным числом аргументов: ... и_____ VA_ARGS_                            672

Выбор между макросом и функцией                                                                                              673

Включение файлов: директива #include                                                                                        674

Пример заголовочного файла                                                                                                   675

Случаи применения заголовочных файлов                                                                          677

Другие директивы                                                                                                                                678

Директива # unde f                                                                                                                       678

Определение с точки зрения препроцессора                                                                        678

Условная компиляция                                                                                                                  679

Предопределенные макросы                                                                                                     684

Директивы #line и #error                                                                                                              685

Директива #pragma                                                                                                                      685

Обобщенный выбор (C11)                                                                                                          686

Встраиваемые функции (С99)                                                                                                          688

Функции Noreturn (С11)                                                                                                                     690

Библиотека С                                                                                                                                        690

Получение доступа к библиотеке С                                                                                        691

Использование описаний библиотеки                                                                                    692

Библиотека математических функций                                                                                          693

Немного тригонометрии                                                                                                             694

Варианты типов                                                                                                                            695

Библиотека tgmath.h (С99)                                                                                                        697

Библиотека утилит общего назначения                                                                                        698

Функции exit() и atexit()                                                                                                               698

Функция qsort ()                                                                                                                             700

Библиотека утверждений                                                                                                                  704

Использование assert()                                                                                                                 704

_Static_assert(Cl1)                                                                                                                         706

Функции memcpy() Hmemmove() избиблиотеки string.h                                                          707


Еще от автора Стивен Прата
Язык Си

M. УЭИТ   С. ПРАТА    Д. МАРТИНЯзык Си — руководство для начинающих.


Рекомендуем почитать
Изучаем Java EE 7

Java Enterprise Edition (Java EE) остается одной из ведущих технологий и платформ на основе Java. Данная книга представляет собой логичное пошаговое руководство, в котором подробно описаны многие спецификации и эталонные реализации Java EE 7. Работа с ними продемонстрирована на практических примерах. В этом фундаментальном издании также используется новейшая версия инструмента GlassFish, предназначенного для развертывания и администрирования примеров кода. Книга написана ведущим специалистом по обработке запросов на спецификацию Java EE, членом наблюдательного совета организации Java Community Process (JCP)


MFC и OpenGL

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


Как функции, не являющиеся методами, улучшают инкапсуляцию

Когда приходится инкапсулировать, то иногда лучше меньше, чем большеЯ начну со следующего утверждения: Если вы пишете функцию, которая может быть выполнена или как метод класса, или быть внешней по отношению к классу, Вы должны предпочесть ее реализацию без использования метода. Такое решение увеличивает инкапсуляцию класса. Когда Вы думаете об использовании инкапсуляции, Вы должны думать том, чтобы не использовать методы.Удивлены? Читайте дальше.


Обработка событий в С++

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


Программное обеспечение встроенных систем. Общие требования к разработке и документированию

Embedded system software. General requirements for development and documentationСтандарт подготовлен в развитие ГОСТ Р ИСО/МЭК 12207-99 «Информационная технология. Процессы жизненного цикла программных средств» с целью учета специфики разработки и документирования программного обеспечения встроенных систем реального времени.


Как пасти котов. Наставление для программистов, руководящих другими программистами

«Как пасти котов» – это книга о лидерстве и руководстве, о том, как первое совмещать со вторым. Это, если хотите, словарь трудных случаев управления IT-проектами. Программист подобен кошке, которая гуляет сама по себе. Так уж исторически сложилось. Именно поэтому так непросто быть руководителем команды разработчиков. Даже если вы еще месяц назад были блестящим и дисциплинированным программистом и вдруг оказались в роли менеджера, вряд ли вы знаете, с чего надо начать, какой выбрать стиль руководства, как нанимать и увольнять сотрудников, проводить совещания, добиваться своевременного выполнения задач.