stdlib.h (расшифровывается как standard library — стандартная библиотека ) — заголовочный файл стандартной библиотеки C общего назначения, включающий в себя функции занимающиеся распределением памяти, управлением процессами, преобразованием и др.
Функции [ ]
- RAND_MAX
Типы данных [ ]
Материалы сообщества доступны в соответствии с условиями лицензии CC-BY-SA, если не указано иное.
Advertisement
Fan Feed
The Elder Scrolls Wiki
Террария вики
Наши ресурсы
В социальных сетях
Обзор
- Что такое Фэндом?
- О нас
- Вакансии
- В прессе
- Обратная связь
- Условия использования
- Конфиденциальность
- Общая карта сайта
- Локальная карта сайта
Сообщество
- Вики Сообщества
- Поддержка
- Справка
- Запретить продажу данных
Реклама на сайте
Приложения Фэндома
Оставайтесь в курсе всего происходящего на ваших любимых сообществах.
Язык си с нуля | #2 Программа на си(библиотека stdio.h)
Справочное руководство C Wiki — это сообщество Фэндома на портале Увлечения.
Источник: crm.fandom.com
Заголовочный файл cstdlib (stdlib.h)
Этот заголовочный файл определяет несколько функций общего назначения, в том числе — функции динамического управления памятью, генерации случайных чисел, целой арифметики, поиска, сортировки и преобразования типов данных.
Функции заголовочного файла cstdlib
atof | Преобразование строки в число типа double . |
atoi | Преобразование строки в число типа int . |
atol | Преобразование строки в число типа long int . |
strtod | Преобразование строки в значение типа double . |
strtol | Преобразование строки в long int . |
strtoul | Преобразование строки в unsigned long int . |
itoa | Преобразование числа в строку типа string . |
rand | Генератор псевдослучайных чисел. |
srand | Инициализатор генератора псевдослучайных чисел. |
calloc | Динамическое выделение памяти под массив данных, предварительно инициализируя её нулями. |
free | Высвобождение динамически выделенной ранее памяти. |
malloc | Динамическое выделение памяти, без инициализации. |
realloc | Динамическое выделение памяти, с возможным перемещением блока памяти. |
bsearch | Бинарный поиск в массиве данных. |
qsort | Быстрая сортировка элементов массива. |
abs | Вычисление абсолютной величины (модуля) только целых значений типа int . |
div | Функция возвращает целую часть и остаток типа int , при делении числителя на знаменатель. |
labs | Вычисление абсолютной величины (модуля) целых значений типа long int . |
ldiv | Функция возвращает целую часть и остаток, типа long int , при делении числителя на знаменатель. |
mblen | Определение размера строки с много-байтовыми символами. |
mbtowc | Преобразование много-байтового символа в широкий символ типа wchar_t . |
wctomb | Преобразование широкого символа типа wchar_t в много-байтовый символ. |
mbstowcs | Преобразование строки с много-байтовыми символами в строку с широкими символами типа wchar_t . |
wcstombs | Преобразование строки с широкими символами в строку с многобайтовыми символами. |
abort | Аварийное завершение работы программы. |
atexit | Вызов функций после удачного завершения программы. |
exit | Немедленное завершение программы(процесса). |
getenv | Обращение к переменным окружения. |
system | Выполнение системной команды. |
Макросы
EXIT_FAILURE | Неудачное завершение программы. |
EXIT_SUCCESS | Успешное завершение программы. |
MB_CUR_MAX | Макрос определяет максимальный размер много-байтовых символов. |
NULL | Нулевой указатель. |
RAND_MAX | Максимальное значение, генерируемое функцией rand. |
Типы данных
div_t | Структура для представления частного и остатка от деления типа int. |
ldiv_t | Структура для представления частного и остатка от деления типа long. |
size_t | Тип данных для представления размера в байтах. |
Источник: cppstudio.com
Учимся читать код, изучая стандартную библиотеку Python
Итак, вы уже продвинутый новичок — вы изучили основы Python и способны решать реальные задачи.
Вы уже отходите от просмотра туториалов и чтения блогов; наверно, уже ощущаете, что в них излагаются одномерные решения простых придуманных задач; вероятно, вместо решения этой конкретной задачи вы хотите совершенствоваться в решении задач в целом.
Наверно, вы слышали, что нужно нарабатывать понимание чтением и написанием больших объёмов кода. Это правда.
Но какой же код нужно читать?
«Просто читай то, что нравится». А если вы не знаете, что вам нравится? А если вам не нравится что-то правильное?
Или хуже того — если вам нравится что-то неправильное и из-за этого у вас выработаются вредные привычки?
В конечном итоге, для этого ведь необходимо понимание… Но именно его мы и стремимся обрести.
«На GitHub куча проектов — выберите понравившийся и изучайте, как его реализовали разработчики». Однако самые успешные проекты довольно объёмны — с чего начинать?
И даже если вы знаете, с чего начинать, не всегда очевидно, как разработчики пришли к своему решению.
Да, вы видите код своими глазами, но он не говорит вам о том, почему разработчики написали его так, чего они не делали и как они рассуждали о проекте в целом.
Другими словами, из самого кода неочевидно, какой была философия его проектирования, и какие варианты решений разработчики рассматривали, прежде чем остановиться на конкретной реализации.
В этой статье мы рассмотрим некоторые модули стандартной библиотеки Python.
Примечание о стандартной библиотеке
В целом, стандартная библиотека Python неидеальна для изучения «хорошего» стиля.
Хотя все её модули полезны, они не особо однородны:
- их писали разные авторы;
- некоторые из них старые (стиль Python 10-20 лет назад был другим);
- им нужно было сохранять обратную совместимость (то есть невозможно провести рефакторинг багов и вносить крупные изменения в API).