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).