Библиотечные функции в C++

Библиотечные функцииБиблиотечные функции, также называемые «встроенными», — это функции, которые уже доступны и реализованы в C++.

Мы можем напрямую вызывать эти функции в нашей программе в соответствии с нашими требованиями. Библиотечные функции в C++ объявляются и определяются в специальных файлах, называемых «файлами заголовков», на которые мы можем ссылаться в наших программах на C++ с помощью директивы «include».

Обзор

Например, чтобы включить все встроенные функции, связанные с математикой, мы должны включить заголовок <cmath> следующим образом:

Некоторые заголовочные файлы стандартных библиотек, которые используются в C++, сведены в таблицу, как показано ниже. Эти заголовки заменяют соответствующие аналоги расширением «.h».

Например , <iostream> заменяет заголовочный файл <iostream.h>.

Файлы заголовков кратко описаны ниже:

Заголовки Описание
iostream Этот заголовок содержит прототип стандартных функций ввода и вывода, используемых в C++, таких как cin, cout и т. д.
cmath Это заголовок, содержащий различные функции математической библиотеки.
iomanip Этот заголовок содержит функции манипулятора потока, которые позволяют нам форматировать поток данных.
cstdlib Заголовок cstdlib содержит различные функции, связанные с преобразованием текста в числа, выделением памяти, случайными числами и другими вспомогательными функциями.
ctime ctime содержит прототипы функций, связанных с манипуляциями с датой и временем в C++.
cctype Этот заголовок включает в себя прототипы функций, которые проверяют тип символов (цифры, знаки препинания и т. д.). У него также есть прототипы, которые используются для преобразования из верхнего регистра в нижний и наоборот.
cstring Заголовок cstring включает прототипы функций для функций обработки строк в стиле C.
cstdio Этот заголовок содержит прототипы функций стандартной библиотеки ввода-вывода в стиле C, которые мы изначально включили в stdio.h.
fstream Прототипы функций, которые выполняют ввод/вывод из/в файлы на диске, включены в заголовок fstream.
climits Заголовок climits имеет встроенные ограничения размера системы.
cassert Заголовок cassert содержит макросы и переменные для добавления диагностики, помогающей нам в отладке программы.
cfloat Этот заголовочный файл содержит ограничения на размер чисел с плавающей запятой в системе.
string Строка заголовка определяет строку класса стандартной библиотеки C++.
list, vector, stack, queue, deque, map, set, bitset Все эти заголовки используются для реализации стандартной библиотеки шаблонов (STL). Каждый из этих заголовков содержит соответствующее определение класса и прототипы функций.
typeinfo Этот заголовок содержит различные классы для идентификации типа во время выполнения (RTTI).
exception, stdexcept В эти два заголовка включены все классы и функции, используемые для обработки исключений в C++.
memory Этот заголовок используется стандартной библиотекой C++ для выделения памяти.
sstream Функции, которые считывают ввод из строк в памяти и выводят в строки в памяти, требуют прототипов функций из заголовка sstream для реализации функциональности.
functional Используется алгоритмами стандартной библиотеки C++.
iterator Прототипы функций и классы в этом заголовке используются стандартной библиотекой шаблонов для прохождения или повторения данных внутри контейнеров.
algorithm Методы, которые воздействуют на данные контейнера STL, включены в этот алгоритм заголовка.
locale Используется для обработки данных в исходной естественной форме для разных языков, валюты, представления символов и т. д.
limits Этот заголовок определяет ограничение по типу данных для чисел на каждой платформе.
utility Этот заголовок содержит служебные функции и классы, используемые стандартной библиотекой C++.

Читать также:  Множество в STL

Мы уже использовали большинство этих заголовков в наших программах. Заголовки <iostream>, <string>, <ctime>, мы частенько используем.

В наших следующих статьях по STL мы будем использовать все заголовки контейнеров и <algorithm>, а также заголовок <iterator>. Точно так же, когда мы изучим файловый ввод-вывод и обработку исключений, мы будем использовать соответствующие заголовки.

В этой статье мы в основном будем иметь дело с заголовками <cmath> и <cctype> и обсудим различные прототипы функций, которые они поддерживают. Прототипы функций из этих заголовков широко используются в программировании на C++.

Заголовок <cmath>

Этот заголовок содержит различные прототипы функций, связанные с математическими функциями. Некоторые из широко используемых прототипов перечислены здесь:

Функция Описание
sqrt(x) Принимает любой неотрицательный числовой параметр x и возвращает квадратный корень из этого числа x
pow(base,exponent) Увеличивает «базовое» значение до степени, указанной показателем степени. Возвращает основание^показатель степени.
exp(x) Принимает любое число (положительное, отрицательное или нулевое) в качестве параметра и возвращает экспоненциальное число (число Эйлера) e, возведенное в соответствие с заданным параметром.
fabs(x) Возвращает абсолютное значение аргумента.
log(x) Возвращает натуральный логарифм (по основанию e) значения x
log 10(x) Возвращает логарифм (по основанию 10) значения x
sin(x) Возвращает синус угла x (в радианах)
cos(x) Возвращает косинус угла x (в радианах)
tan(x) Возвращает тангенс угла x (в радианах)
asin(x) Возвращает арксинус (в радианах) числа x
acos(x) Возвращает арккосинус (в радианах) числа x
atan(x) Возвращает арктангенс (в радианах) числа x

Читать также:  Многомерные массивы в C++

Заголовок <cctype>

Этот заголовок содержит прототипы функций, которые в основном используются для преобразования символа в верхний/нижний регистр или для проверки, является ли символ цифрой и т. д.

Прототипы функций, включенные в заголовок <cctype>, перечислены ниже:

Функция Описание
toupper(ch) Принимает символ ‘ch’ в качестве аргумента и возвращает эквивалент ch в верхнем регистре, если он присутствует, в противном случае возвращает ch.
tolower(ch) Принимает символ ‘ch’ в качестве аргумента и возвращает строчный эквивалент ch, если он присутствует, в противном случае возвращает ch.
isalpha(ch) Возвращает ненулевое значение, если ch является алфавитом, иначе 0.
isalnum(ch) Возвращает ненулевое значение, если ch является буквенно-цифровым (алфавит или цифра), в противном случае 0.
isupper(ch) Возвращает ненулевое значение, если ch в верхнем регистре, иначе 0.
isdigit(ch) Возвращает ненулевое значение, если ch является числом, иначе 0.
islower() Возвращает ненулевое значение, если ch в нижнем регистре, иначе 0.

Заголовок <stdlib>

У нас также есть другой заголовок <stdlib>, который включает в себя различные полезные библиотечные функции, широко используемые в программировании на C++.

Мы перечислили некоторые из популярных функций в <stdlib> ниже:

Функция Описание
abs(x) Возвращает абсолютное значение целочисленного аргумента x
atof(const char* str) Преобразует строку в двойную; возвращает двойной
atoi(const char* str) Преобразует строку в целое; возвращает целое число
atol(const char* str) Преобразует строку в тип long int; возвращает длинное целое
atoll(const char* str) Преобразует строку в long long int; возвращает очень длинный int
strtod Преобразует строку в двойную
strtol Преобразует строку в длинное целое
strtoul Преобразует строку в беззнаковое длинное целое
strtof Преобразует строку в число с плавающей запятой
strtold Преобразует строку в long double
strtoull Преобразует строку в очень длинное целое без знака
strtoll Преобразует строку в длинное целое число
srand(int seed) Это генератор псевдослучайных чисел, который инициализируется аргументом «seed».
qsort Сортирует элементы массива в порядке возрастания (внутренне использует метод быстрой сортировки)
abort Прерывает процесс, что приводит к аварийному завершению программы
atexit Имеет функцию, переданную в качестве аргумента, который выполняется, что приводит к нормальному завершению программы.
malloc(size_t size) Используется для выделения памяти, указанной по размеру, и возврата указателя на нее.
calloc ( size_t num, size_t size) Выделяет память размером (num*size) байтов, при этом все биты инициализируются нулем.
free(void* ptr) Освобождает блок памяти, выделенный вызовом функции malloc, calloc или realloc.
realloc ( void* ptr, size_t size ) Изменяет размер блока памяти, на который указывает ptr, который изначально был выделен с помощью вызова функции malloc или calloc.
quick_exit Обычное завершение процесса после возвращения управления в хост-среду.
system Вызывает командный процессор для выполнения системной команды, переданной в качестве аргумента.
getenv Извлекает значение строки среды, переданной в качестве аргумента функции.
wctomb Преобразование широкого символа в многобайтовую последовательность
wcstombs Преобразовать строку широких символов в многобайтовую строку

Читать также:  Приложение и безопасность в Java на уровне пользователя

Итог

В этой статье мы рассмотрели некоторые файлы заголовков, поддерживаемые стандартной библиотекой C++.

Мы также обсудили некоторые популярные библиотечные функции, используемые программистами. Этот список функций не является исчерпывающим, так как каждый заголовок стандартной библиотеки C++ содержит слишком много функций для удобства программистов.

В нашей следующей статье вы ознакомитесь с различными преобразованиями типов, поддерживаемыми в C++.

С Уважением, МониторБанк

Добавить комментарий