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

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

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

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

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

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

Интервал:

Закладка:

Сделать

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

Справочные материалы 877

Продолжение табл. Б.\(.36

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

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

Справочные материалы 879

Окончание табл. B.V.36

Noreturn stdnoreturnh Это определяет макрос noreturn который расширяется до - фото 675

_Noreturn: stdnoreturn.h

Это определяет макрос noreturn, который расширяется до _Noreturn.

Обработка строк: string.h

В заголовочном файле string.h определен тип size_t и макрос NULL для нулевого указателя. Кроме того, предлагается ряд функций для анализа и манипулирования символьными строками, а также несколько функций, работающих с памятью более универсальным способом. Эти функции перечислены в табл. B.V.37.

Таблица 6.V.37. Строковые функции

Справочные материалы 881 Окончание табл BV37 Функция strtok применяется - фото 676

Справочные материалы 881 Окончание табл BV37 Функция strtok применяется - фото 677

Справочные материалы 881

Окончание табл. B.V.37

Функция strtok применяется несколько необычно поэтому рассмотрим небольшой - фото 678

Функция strtok() применяется несколько необычно, поэтому рассмотрим небольшой пример:

#include

#include

int main(void)

{

char data[] = " С приносит\t очень#много\nрадости!"; const char tokseps[] = " \t\n#"; /* разделители */

char * pt;

puts(data);

pt = strtok(data,tokseps); /* первый вызов */

while (pt) /* выход в случае NULL */

{

puts (pt); /* показать лексему */

pt = strtok(NULL, tokseps); /* следующая лексема */

}

return 0;

}

882 Приложение Б

Вот вывод, полученный в результате запуска этого примера:

С приносит очень#много радости!

С

приносит очень много радости!

Математические функции для обобщенных типов:

tgmath.h (С99)

Библиотеки math.h и complex.h предоставляют множество экземпляров функций, которые отличаются только типами. Например, все шесть функций, показанные ниже, вычисляют синус:

double sin(double);

float sinf(float);

long double sinlllong double);

double complex csin(double complex);

float csinf(float complex);

long double csinlllong double complex);

В заголовочном файле tgmath.h определены макросы, которые расширяют обобщенный вызов в обращение к соответствующей функции, как указано типом аргумента. Следующий код иллюстрирует использование макроса sin(), расширяемого в различные формы функции синуса:

В этом заголовочном файле определены обобщенные макросы для трех классов - фото 679

В этом заголовочном файле определены обобщенные макросы для трех классов функций. Первый класс состоит из функций math.h и complex.h, определенных в тести вариациях, в которых применяются суффиксы f и 1 и префикс с, как в предыдущем примере с sin(). В данном случае обобщенный макрос носит то же имя, что и версия double функции.

Во второй класс входят функции math.li, определенные в трех вариациях с использованием суффиксов f и 1, которые не имеют комплексных аналогов, к примеру, erf(). В этом случае имя макроса выглядит так же, как имя функции без суффикса, в рассматриваемом примере — erf(). Результат применения такого макроса с комплексным аргументом не определен.

Третий класс состоит из функций complex.h, которые определены в трех вариациях с использованием суффиксов f и 1 и не имеют вещественных аналогов, таких как cimag(). В данном случае имя макроса совпадает с именем функции без суффикса, в этом примере — cimag(). Результат применения такого макроса с вещественным аргументом не определен.

В табл. B.V.38 перечислены обобщенные функциональные макросы.

Справочные материалы 883

Таблица 6.V.38. Обобщенные математические функции

До выхода стандарта С11 для определения обобщенных макросов реализации должны - фото 680

До выхода стандарта С11 для определения обобщенных макросов реализации должны были прибегать к расширениям стандарта. Но добавление выражения _Generic делает возможной прямую реализацию с использованием стандарта СИ.

ПОТОКИ: threads.h (С11)

Заголовочный файл threads.h наряду с stdatomic.h предоставляет поддержку для параллельного программирования. Эта тема выходит за рамки настоящей книги, но, выражаясь общими терминами, данный заголовочный файл поддерживает множество потоков выполнения, которые в принципе могут быть назначены разным процессорам.

Дата И время: time.h

В заголовочном файле time.h определены три макроса. Первым из них, который также определен во многих других заголовочных файлах, является NULL, представляющий нулевой указатель. Второй макрос — это CLOCKS_PER_SEC; деление на этот макрос значения, возвращенного функцией clock()', позволяет получить время в секундах. Третий макрос (С11) называется TIME_UTC и представляет собой положительную целочисленную константу, обозначающую координату времени UTC (Universal Time Coordinated — универсальное синхронизированное время), которая является потенциальным аргументом функции timespec_get().

UTC — это текущий основной стандарт мирового времени. Он применяется, например, в авиации, при составлении прогнозов погоды, для синхронизации компьютерных часов и в качестве общего стандарта в Интернете.

Определенные в этом заголовочном файле типы перечислены в табл. B.V.39.

Таблица 6.V.39. Типы, определенные в time.h

Структура timespec содержит по меньшей мере два члена показанные в табл - фото 681

Структура timespec содержит, по меньшей мере, два члена, показанные в табл. Б.У40.

884 Приложение Б

Таблица 6.V.40. Члены структуры timespec

Компоненты календарного типа называют разделенным на составляющие временем В - фото 682

Компоненты календарного типа называют разделенным на составляющие временем. В табл. B.V.41 перечислены обязательные члены структуры struct tm.

Таблица 6.V.41. Члены структуры struct tm

Термин календарное время обозначает текущую дату и время например это может - фото 683

Термин календарное время обозначает текущую дату и время; например, это может быть количество секунд, прошедших после первой секунды 1900 года. Термин локальное время — это календарное время, выраженное для локального часового пояса. Функции для работы со временем перечислены в табл. B.V.42.

Таблица 6.V.42. Функции для работы со временем

Справочные материалы 885 Окончание табл Б V42 В табл BV43 представлены - фото 684

Справочные материалы 885

Окончание табл. Б. V.42

В табл BV43 представлены спецификаторы формата применяемые в функции - фото 685

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

Интервал:

Закладка:

Сделать


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

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




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


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


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

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