1. Главная страница » Компьютеры

Include stdlib h что это

Автор: | 16.12.2019

В этой главе описаны вспомогательные функции, которые могут быть использованы в разнообразных программах. Соответствующие описания содержатся в файле stdlib.h.

Перед завершением программы abort генерирует сигнал sigabrt (используя raise(sigabrt)).

Если Вы использовали signal для установки обработчика данного сигнала, то этот обработчик может взять управление на себя, предотвратив прекращение работы программы.

abort не выполняет каких-либо действий, связанных с очисткой потоков или файлов (это может сделать среда, в которой работает программа; если она этого не делает, то Вы можете организовать для своей программы свою собственную очистку при помощи обработчика сигнала sigabrt).

abort не возвращает yпpавление вызвавшей программе.

Стандарт ANSI требует наличия процедуры abort.

Требуются процедуры ОС getpid и kill.

Похожая функция labs используется для возвращения значений типа long, а не int.

Резyльтат является неотpицательным целым.

Стандарт ANSI требует наличия функции abs.

Не требуется никаких пpоцедyp ОС.

Когда expression ложно (ноль), assert вызывает abort, предварительно выведя сообщение, показывающие, какая и где произошла ошибка:

assert, так же как и его поведение при определении NDEBUG, определяется стандартом ANSI.

Требуются процедуры ОС (только если использования assert не исключены) close, fstat, getpid, isatty, kill, lseek, read, sbrk, write.

Эти функции помещаются в lifo-стек; таким образом последняя из перечисленных функций будет выполнена первой при выходе из программы.

Не предусмотрено никаких ограничений на количество внесенных в этот список функций; после внесения каждых 32 функций в список, atexit вызывает malloc для выделения памяти под следующую часть списка. Место для первых 32 элементов списка выделяется статически, так что Вы всегда можете рассчитывать на то, что по крайней мере 32 функции могут быть внесены в список.

atexit возвращает 0, если удалось внести Вашу функцию в список, и -1, в случае ошибки (возникает только в случае, если нет памяти для расширения списка посредством функции malloc).

Стандарт ANSI требует наличия функции atexit и определяет безусловную возможность внесения в список по крайней мере 32 функций.

Требуются пpоцедypы ОС close, fstat, isatty, lseek, read, sbrk, write.

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

atof(s) реализовано как strtod(s, NULL). atoff(s) — как strtodf(s, NULL).

atof возвращает значение преобразованной подстроки, если она есть, как double; или 0.0, если никакого преобразования не было выполнено. Если правильное значение вышло за границы представляемых значений, то возвращается плюс или минус huge_val и в errno записывается erange. Если правильное значение слишком мало, то возвращается 0.0 и erange сохраняется в errno.

atoff подчиняется тем же правилам, что и atof, за исключением того, что выдает float.

Стандарт ANSI требует наличия функции atof. atof, atoi и atol относятся к тому же типу, что и strod и strol, но интенсивно используются в существующих программах. Эти функции менее надежны, но могут исполняться быстрее, если известно, что аргумент находится в допустимом диапазоне.

Требуются процедуры ОС close, fstat, isatty, lseek, read, sbrk, write.

atoi(s) реализован как (int)strtol(s, NULL, 10),а atol(s) — как strtol(s, NULL, 10).

Эти функции возвращают преобразованное значение, если оно есть. Если никакого преобразования не было выполнено, то возвращается 0.

Стандарт ANSI требует наличия функции atoi.

Никаких процедур ОС не требуется.

atol(s) реализован как strtol(s,NULL,10).

Стандарт ANSI требует наличия функции atol.

Никаких процедур ОС не требуется.

Массив должен быть отсортирован в возрастающем порядке относительно функции сравнения compar (которая передается как последний аргумент bsearch).

Вы должны определить функцию сравнения (*compar), имеющую два аргумента; ее результат должен быть отрицательным, если первый аргумент меньше второго, ноль, если оба аргумента совпадают и положительным, если первый аргумент больше второго (где "меньше" и "больше" относятся к произвольному подходящему порядку).

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

Стандарт ANSI требует наличия функции bsearch.

Никаких процедур ОС не требуется.

Выделяемая при помощи calloc память берется из области, используемой malloc, но блоки памяти при инициализации заполняются нулями. (Для избежания накладных расходов вpемени для инициализации выделяемой памяти использyйте malloc.)

Другая функция _calloc_r является повторно-входимым аналогом. Дополнительный аргумент reent — указатель на структуру, содержащую информацию для обеспечения повторной входимости.

В случае успешного выполнения функции выдается указатель на выделенное пространство, в противном случае возвращается NULL.

Стандарт ANSI требует наличия функции calloc.

Требуются процедуры ОС close, fstat, isatty, lseek, read, sbrk, write.

Результат представляется при помощи структуры

Когда d равно 0, поле quot результата имеет тот же знак, что и n и наибольшее представимое его типом значение.

Для деления значений типа long, а не int, используйте похожую функцию ldiv.

Стандарт ANSI требует наличия функции div, но обработка нулевого d не определена стандартом.

Никаких процедур ОС не требуется.

(Функции stdlib ecvtbuf и fcvtbuf — другие версии ecvt и fcvt.)

Единственнон отличие между ecvt и fcvt состоит в интерпретации второго аргумента (chars или decimals). Для ecvt второй аргумент chars определяет общее число выводимых знаков (которое является также числом значащих знаков в форматированной строке, поскольку эти функции выводят только цифры). Для fcvt второй аргумент decimals определяет число знаков после десятичной точки, все знаки целых частей val выводятся всегда.

Поскольку ecvt и fcvt выводят только цифры в выводимой строке, то они записывают место десятичной точки в *decpt, а знак числа — в *sgn. После форматирования числа *decpt содержит число знаков слева от десятичной точки, а *sgn содержит 0, если число положительно, и 1, если число отрицательно.

Все четыре функции возвращают указатель на строку, содержащую текстовое представление val.

Ни одна из этих функций не определена в ANSI C.

Требуются пpоцедypы ОС close, fstat, isatty, lseek, read, sbrk, write.

gcvt использует те же правила, что и формат printf %.precisiong — только отрицательные числа записываются со знаком и или экспоненциальная форма записи, или вывод в виде обычной десятичной дроби выбираются в зависимости от числа значащих знаков (определяется при помощи precision).

В результате выдается указатель на отформатированное представление val (совпадающий с аргументом buf).

Ни одна из этих функций не определена в стандарте ANSI C.

Требуются процедуры ОС close, fstat, isatty, lseek, read, sbrk, write.

Единственнон отличие между ecvtbuf и fcvtbuf состоит в интерпретации второго аргумента (chars или decimals). Для ecvtbuf второй аргумент chars определяет общее число выводимых знаков (которое является также числом значащих знаков в форматированной строке, поскольку эти функции выводят только цифры). Для fcvtbuf второй аргумент decimals определяет число знаков после десятичной точки, все знаки целых частей val выводятся всегда.

Поскольку ecvtbuf и fcvtbuf выводят только цифры в выводимой строке, то они записывают место десятичной точки в *decpt, а знак числа — в *sgn. После форматирования числа *decpt содержит число знаков слева от десятичной точки, а *sgn содержит 0, если число положительно, и 1, если число отрицательно. Для обоих функций Вы передаете указатель buf на ту область памяти, в которую будет записана выходная строка.

Все четыре функции возвращают указатель buf на строку, содержащую текстовое представление val.

Стандарт ANSI не требует наличия ни одной из этих функций.

Требуются процедуры ОС close, fstat, isatty, lseek, read, sbrk, write.

exit производит два вида очищающих операций перед завершением выполнения программы. Сначала вызывается определенные приложением функции, которые Вы можете перечислить при помощи atexit. Во-вторых, очищаются файлы и потоки: все выводимые данные доставляются операционной системе, каждый открытый файл или поток закрывается, а файлы, созданные с помощью tmpfile, уничтожаются.

exit не возвращает yпpавление вызвавшей пpогpамме.

Стандарт ANSI требует наличия функции exit, также как и величин exit_success и exit_failure.

Требуется процедура ОС _exit.

Возвращается указатель на (строку) значение переменной среды или NULL, если такой переменной среды нет.

Стандарт ANSI требует наличия функции getenv, но правила наименования переменных среды могут меняться в зависимости от системы.

getenv требует наличия глобального указателя environ.

Похожая фyнкция abs обpабатывает и выдает значения типа int, а не длинные числа.

В pезyльтате полyчается неотpицательное длинное целое.

Стандарт ANSI требует наличия функции labs.

Никаких процедур ОС не требуется.

Результат представляется при помощи структуры

Когда d ноль, поле quot имеет тот же знак, что и n, и наибольший представимый модуль.

Для деления значений типа int, а не long, используйте похожую функцию div.

Стандарт ANSI требует наличия функции ldiv, но обработка нулевого d не определена стандартом.

Никаких процедур ОС не требуется.

Используйте malloc для запроса места под объект размером по крайней мере nbytes байт. Если пространство доступно, то malloc возвращает указатель на выделенное место в памяти.

Если у вас уже есть выделенное malloc место в памяти, но Вам уже не нужно все имеющееся пространство, Вы можете уменьшить использование памяти, вызвав realloc, задав ему указатель на объект и его новый размер как параметры. realloc гарантирует, что содержимое меньшего объекта будет соответствовать началу содержимого исходного объекта.

Аналогично, если Вам нyжно отвести для объекта больше памяти, использyйте realloc для запpоса большего количества памяти, в этом слyчае realloc также гаpантиpyет соответствие начала нового объекта стаpомy объектy.

Если Вам больше не тpебyется объект, выделенный пpи помощи malloc или realloc (или фyнкцией calloc), то занимаемое им место можно возвpатить системе, вызвав free, задав адpес объекта в качестве аpгyмента. Также для этого можно использовать realloc, задав 0 в качестве аpгyмента nbytes.

Другие функции _malloc_r, _realloc_r, и _free_r являются повторно-входимыми аналогами. Дополнительный аргумент reent — указатель на структуру содержащую информацию для обеспечения повторной входимости.

malloc возвращает указатель на выделенное пространство нужного размера, если оно было найдено, и NULL в противном случае. Если ваше приложение должно сгенерировать пустой объект, то Вы можете использовать для этой цели malloc(0).

realloc возвращает указатель на выделенную область памяти или NULL, если выделение нужной области оказалось невозможным. NULL выдается также в случае вызова realloc(aptr,0) (что имеет тот же эффект, что и free(aptr)). Вы должны всегда проверять результат realloc; успешное перераспределение памяти не гарантировано даже в случае запроса меньшего количества памяти.

free не выдает никакого результата.

Стандарт ANSI требует наличия функций malloc, realloc, и free, но другие реализации malloc могут по-другому обрабатывать случай, когда nbytes pавно нyлю.

Требуются процедуры ОС sbrk, write (если warn_vlimit).

Каждый вызов mbtowc копиpyет один знак из *s в *pwc, если только s не является yказателем NULL.

В этой реализации аргумент n игнорируется.

Эта реализация mbtowc возвращает 0, если s — NULL; в противном случае возвращается 1 (в соответствии с длиной считанной последовательности).

Стандарт ANSI требует наличия функции mbtowc. Однако в деталях реализации возникают различия.

mbtowc не требует никаких процедур ОС.

Вы должны задать указатель на функцию сравнения, используя аргумент compar. (Это позволяет сортировать объекты с произвольными свойствами.) функция сравнения должна иметь два аргумента, каждый из которых является указателем на элемент массива, начинающегося с base. Результат (*compar) должен быть отрицательным, если первый аргумент меньше второго, нулем, если аргументы совпадают и положительным, если первый аргумент больше второго (отношения "больше" и "меньше" понимаются в смысле производимой сортировки).

Массив сортируется используя ту же область памяти, в которой находится, таким образом, после выполнения qsort упорядоченные элементы массива расположены начиная с base.

Qsort не возвращает yпpавление вызвавшей пpогpамме.

Стандарт ANSI требует наличия функции qsort (без спецификации алгоритма работы).

Требуются процедуры ОС close, fstat, isatty, lseek, read, sbrk, write.

Вы можете задать random seed используя srand; эта функция сохраняет свой аргумент в статической переменной, используемой rand. Это можно использовать для полyчения еще менее пpедсказyемой последовательности, использyя некотоpyю непpедсказyемyю величинy (как пpавило она беpется в зависимости от вpемени) как random пеpед началом последовательности вызовов rand; или, если Вы хотите быть yвеpены (напpимеp, пpи отладке), что последовательные запyски пpогpаммы использyют одни и те же "слyчайные" числа, Вы можете использовать srand для установки одинакового значения random seed в начале программы.

Другие функции _rand_r и _srand_r являются повторно-входимыми аналогами. Дополнительный аргумент reent — указатель на структуру, содержащую информацию для обеспечения повторной входимости.

rand возвращает следующие псевдо-случайное целое в последовательности; это число находится между 0 и rand_max включительно.

srand не возвращает yпpавление вызвавшей пpогpамме

Стандарт ANSI требует наличия функции rand, но алгоритм для генерации псевдо-случайных чисел не определен и даже использование одного и то же значение random seed не может обеспечивать одинаковые pезyльтаты на pазных машинах.

rand не требует никаких процедур ОС.

Эта реализация возвращает ближайшее к данному десятичному машинное число. Округление производится используя правило "IEEE round-even rule".

Другая функция _strtod_r является повторно-входимым аналогом. Дополнительный аргумент reent — указатель на структуру, содержащую информацию для обеспечения повторной входимости.

strtod возвращает преобразованное значение подстроки, если оно есть. Если преобразование не может быть выполнен, то возвращается 0. Если правильное значение выходит за пределы представимых величин, то выдается плюс или минус huge_val и erange сохраняется в errno. Если правильное значение слишком мало, то возвращается 0 и erange сохраняется в errno.

Требуются процедуры ОС close, fstat, isatty, lseek, read, sbrk, write.

Если значение base равно 0, то существенная строка рассматривается как обычная целая константа c: необязательный знак, возможный признак шестнадцатиричной системы счисления и само число. Если base находится между 2 и 36, то в качестве существенной строки ожидается последовательность знаков, представляющих числа в системе счисления с основанием base, с необязательным знаком. Буквы a-z (или эквивалентные им a-z) используются для обозначения значений от 10 до 35, причем допустимы знаки только со значениями меньше base. Если base равно 16, то вначале допустимо наличие 0x.

Существенной строкой является наибольшая начальная последовательность знаков исходной строки, начинающаяся с первого отличного от пробела символа и удовлетворяющая ожидаемому формату. Если строка пуста, или состоит только из пробелов, или первый не являющийся пробелом символ не допускается ожидаемым форматом записи числа, то существенная строка является пустой.

Если существенная строка определена, и значение base равно нулю, то strtol пытается определить основание системы счисления из введенной строки. Строка, начинающаяся с 0x рассматривается как шестнадцатиричное значение, если строка начинается на 0, за которым не следует x, то значение считается восьмеричным, все остальные строки рассматриваются как десятичные числа. Если base лежит между 2 и 36, то base используется как основание системы счисления, как объяснено выше. Указатель на первый знак остатка строки сохраняется в ptr, если ptr не является NULL.

Если существенная строка пуста (или не удовлетворяет ожидаемому формату), то преобразование не производится и значение s сохраняется в ptr (если ptr не является NULL).

Другая функция _strtol_r является функцией повторного вхождения. Дополнительный аргумент reent — указатель на структуру, содержащую информацию для обеспечения повторной входимости.

strtol возвращает преобразованное значение, если оно получено. В противном случае возвращается 0.

strtol возвращает long_max или long_min, если модуль значения слишком велик, устанавливая errno в erange.

Стандарт ANSI требует наличия функции strtol.

Никаких процедур ОС не требуется.

Если значение base равно 0, то существенная строка рассматривается как обычная целая константа c (за исключением невозможности присутствия знака): само число и, возможно, признак шестнадцатиричной системы счисления перед ним. Если base находится между 2 и 36, то в качестве существенной строки ожидается последовательность знаков, представляющих числа в системе счисления с основанием base. Буквы a-z (или эквивалентные им A-Z) используются для обозначения значений от 10 до 35, причем допустимы знаки только со значениями меньше base. Если base равно 16, то вначале допустимо наличие 0x.

Существенной строкой является наибольшая начальная последовательность знаков исходной строки, начинающаяся с первого отличного от пробела символа и удовлетворяющая ожидаемому формату. Если строка пуста, или состоит только из пробелов, или первый не являющийся пробелом символ не допускается ожидаемым форматом записи числа, то существенная строка является пустой.

Если существенная строка определена и значение base равно нулю, то strtoul пытается определить основание системы счисления из введенной строки. Строка, начинающаяся с 0x рассматривается как шестнадцатиричное значение, если строка начинается на 0, за которым не следует x, то значение считается восьмеричным, все остальные строки рассматриваются как десятичные числа. Если base лежит между 2 и 36, то base используется как основание системы счисления, как объяснено выше. Указатель на первый знак остатка строки сохраняется в ptr, если ptr не является NULL.

Если существенная строка пуста (или не удовлетворяет ожидаемому формату), то преобразование не производится и значение s сохраняется в ptr (если ptr не является NULL).

Другая функция _strtoul_r является функцией повторного вхождения. Дополнительный аргумент reent — указатель на структуру, содержащую информацию для обеспечения повторной входимости.

strtoul возвращает преобразованное значение, если оно получено. В противном случае возвращается 0.

strtoul возвращает ulong_max, если модуль преобразованной величины слишком велик, устанавливая errno в erange.

Стандарт ANSI требует наличия функции strtoul.

strtoul не требует никаких процедур ОС

Используйте system(NULL) для проверки доступности /bin/sh.

Другая функция _system_r является функцией повторного вхождения. Дополнительный аргумент reent — указатель на структуру, содержащую информацию для обеспечения повторной входимости.

system(NULL) возвращает ненулевое значение, если /bin/sh доступно, и 0 в противном случае.

Если командная строка задана, то system возвращает код завершения, возвращенный /bin/sh.

Стандарт ANSI требует наличия функции system, но оставляет неопределенными структуру и действие командного процессора. ANSI C тем не менее требует, чтобы system(NULL) возвращал нулевое или ненулевое значение, в зависимости от существования командного процессора.

POSIX.2 требует наличия функции system и вызова /bin/sh.

Требуются процедуры ОС exit, execve, fork, wait.

Каждый вызов wctomb копиpyет знак wchar в *s, если только s не является yказателем NULL.

Эта реализация wctomb возвращает 0, если s — NULL; в противном случае возвращается 1 (в соответствии с длиной считанной последовательности).

Стандарт ANSI требует наличия функции mbtowc. Однако в деталях реализации возникают различия.

Включает заголовок и добавляет связанные имена std в пространство имен. Includes the C Standard library header and adds the associated names to the std namespace. Включение этого заголовка гарантирует, что имена, объявленные с помощью внешней компоновки в заголовке стандартной библиотеки C std , объявляются в пространстве имен. Including this header ensures that the names declared using external linkage in the C standard library header are declared in the std namespace.

не включает тип wchar_t. doesn’t include the type wchar_t.

Требования Requirements

Заголовок: Header:

Пространство имен: std Namespace: std

Пространство имен и макросы Namespace and Macros

Демонстрации только функции Exposition only functions

Функции запуска и завершения Start and termination functions

Функция Function Описание Description
_Exit _Exit Завершает программу без использования деструкторов или зарегистрированных функций. Terminates program without using destructors or registered functions.
abort abort Завершает программу без использования деструкторов. Terminates program without using destructors.
atexit atexit Регистрирует функцию для завершения программы. Registers function for program termination.
exit exit Уничтожает объекты с потоком и статическим хранилищем, а затем возвращает управление. Destroys objects with thread and static storage, then returns control.
at_quick_exit at_quick_exit Регистрирует функцию без аргументов для завершения программы. Registers function without arguments for program termination.
quick_exit quick_exit Регистрирует функцию с сохраненными объектами для завершения программы. Registers function with preserved objects for program termination.
getenv getenv См. Справочник по стандартной библиотеке C. See C standard library reference.
system system См. Справочник по стандартной библиотеке C. See C standard library reference.

_Exit _Exit

Примечания Remarks

Программа завершается без выполнения деструкторов для объектов автоматической, потоковой или статической длительности хранения и без вызова функций, переданных в atexit() . The program is terminated without executing destructors for objects of automatic, thread, or static storage duration and without calling functions passed to atexit() . Функция _Exit является сигнальной. The function _Exit is signal-safe.

рвал abort

Примечания Remarks

Программа завершается без выполнения деструкторов для объектов автоматической, потоковой или статической длительности хранения и без вызова функций, переданных в atexit() . The program is terminated without executing destructors for objects of automatic, thread, or static storage duration and without calling functions passed to atexit() . Функция abort является сигнальной. The function abort is signal-safe.

at_quick_exit at_quick_exit

Возвращаемое значение Return Value

Нуль, если регистрация завершается успешно, а не равна нулю в случае сбоя. Zero if the registration succeeds, non-zero if it fails.

Примечания Remarks

Функции регистрируют функцию Func, которая вызывается без аргументов при quick_exit вызове метода. at_quick_exit() The at_quick_exit() functions register a function func, which is called without arguments when quick_exit is called. Вызов at_quick_exit() этого метода не происходит до тех пор, пока quick_exit не будут выполнены все вызовы. A call to at_quick_exit() that doesn’t happen before all calls to quick_exit may not succeed. at_quick_exit() Функции не представляют состязание за данные. The at_quick_exit() functions don’t introduce a data race. Порядок регистрации может быть неопределенным, если at_quick_exit был вызван из более чем одного потока. The order of registration may be indeterminate if at_quick_exit was called from more than one thread. Поскольку at_quick_exit регистрации отличаются atexit от регистраций, приложениям может потребоваться вызывать обе функции регистрации, используя один и тот же аргумент. Since at_quick_exit registrations are distinct from the atexit registrations, applications may need to call both registration functions using the same argument. КОМПИЛЯТОРОМ MSVC поддерживает регистрацию по крайней мере 32 функций. MSVC supports the registration of at least 32 functions.

atexit atexit

Примечания Remarks

Функции регистрируют функцию, на которую указывает функция Func для вызова без аргументов при нормальном завершении программы. atexit() The atexit() functions register the function pointed to by func to be called without arguments at normal program termination. Вызов atexit() , который не происходит перед exit() вызовом метода, может быть невозможен. A call to atexit() that doesn’t happen before a call to exit() may not succeed. atexit() Функции не представляют состязание за данные. The atexit() functions don’t introduce a data race.

Возвращаемое значение Return Value

Возвращает нуль, если регистрация завершается успешно, ненулевое значение в случае сбоя. Returns zero if the registration succeeds, nonzero if it fails.

выполняет exit

Примечания Remarks

Сначала уничтожаются объекты с длительностью хранилища потоков и связанные с текущим потоком. First, objects with thread storage duration and associated with the current thread are destroyed.

Затем уничтожаются объекты со статической длительностью хранилища, а функции, регистрируемые atexit вызовом, вызываются. Next, objects with static storage duration are destroyed and functions registered by calling atexit are called. Автоматические объекты не уничтожаются exit() при вызове метода. Automatic objects aren’t destroyed when exit() is called. Если элемент управления оставляет зарегистрированную функцию с exit именем, поскольку она не предоставляет обработчик для вызываемого исключения std::terminate() , вызывается. If control leaves a registered function called by exit because the function doesn’t provide a handler for a thrown exception, std::terminate() is called. Функция вызывается один раз для каждой зарегистрированной. A function is called once for every time it’s registered. Объекты с автоматическим сроком хранения уничтожаются в программе, main функция которой не содержит автоматических объектов и выполняет exit() вызов. Objects with automatic storage duration are all destroyed in a program whose main function contains no automatic objects and executes the call to exit() . Элемент управления можно передать непосредственно в такую main функцию, вызывая исключение, которое main перехватывается. Control can be transferred directly to such a main function by throwing an exception that’s caught in main .

Затем все открытые потоки c (как исправленные сигнатуры функций, объявленные в ) с незаписанными буферизованными данными сбрасываются, все открытые c-потоки закрываются, а все файлы, tmpfile() созданные при вызове, удаляются. Next, all open C streams (as mediated by the function signatures declared in ) with unwritten buffered data are flushed, all open C streams are closed, and all files created by calling tmpfile() are removed.

Наконец, управление возвращается в среду узла. Finally, control is returned to the host environment. Когда Status имеет значение 0 или EXIT_SUCCESS, возвращается определенная реализацией форма состояния "успешно завершено". When status is zero or EXIT_SUCCESS, an implementation-defined form of the status successful termination is returned. КОМПИЛЯТОРОМ MSVC возвращает нулевое значение. MSVC returns a value of zero. Если status имеет состояние EXIT_FAILURE, компилятором MSVC возвращает значение 3. If status is EXIT_FAILURE, MSVC returns a value of 3. В противном случае КОМПИЛЯТОРОМ MSVC возвращает значение параметра Status . Otherwise, MSVC returns the status parameter value.

getenv getenv

quick_exit quick_exit

Примечания Remarks

Как правило, функции, регистрируемые at_quick_exit с помощью вызовов, вызываются в порядке их регистрации в обратную. Generally, functions registered by calls to at_quick_exit are called in the reverse order of their registration. Этот порядок не применяется к функциям, зарегистрированным после того, как уже вызваны другие зарегистрированные функции. This order doesn’t apply to functions registered after other registered functions have already been called. При quick_exit вызове объекты не уничтожаются. No objects are destroyed when quick_exit is called. Если элемент управления оставляет зарегистрированную функцию с quick_exit именем, поскольку она не предоставляет обработчик для вызываемого исключения std::terminate() , вызывается. If control leaves a registered function called by quick_exit because the function doesn’t provide a handler for a thrown exception, std::terminate() is called. Функция, зарегистрированная at_quick_exit с помощью, вызывается потоком, который quick_exit вызывает метод, который может отличаться от потока, который его зарегистрировал. A function registered via at_quick_exit is invoked by the thread that calls quick_exit , which can be a different thread than the one that registered it. Это означает, что зарегистрированные функции не должны полагаться на удостоверение объектов с длительностью хранения потока. That means registered functions shouldn’t rely on the identity of objects that have thread storage duration. После вызова зарегистрированных функций quick_exit вызывает. _Exit(status) After calling registered functions, quick_exit calls _Exit(status) . Стандартные буферы файлов не сбрасываются. The standard file buffers aren’t flushed. Функция quick_exit является сигнальной, если функции, зарегистрированные в at_quick_exit , имеют значение. The function quick_exit is signal-safe when the functions registered with at_quick_exit are.

системой system

Функции выделения памяти Memory allocation functions

Примечания Remarks

Эти функции имеют семантику, указанную в стандартной библиотеке C. These functions have the semantics specified in the C standard library. Компилятором MSVC не поддерживает aligned_alloc функцию. MSVC doesn’t support the aligned_alloc function. C11 задается aligned_alloc() способом, который несовместим с free() реализацией Майкрософт, а именно, которая free() должна иметь возможность обрабатывать строго согласованные выделения. C11 specified aligned_alloc() in a way that’s incompatible with the Microsoft implementation of free() , namely, that free() must be able to handle highly aligned allocations.

Преобразования числовых строк Numeric string conversions

Примечания Remarks

Эти функции имеют семантику, указанную в стандартной библиотеке C. These functions have the semantics specified in the C standard library.

Функции преобразования многобайтовых строк и символов в расширенном виде Multibyte / wide string and character conversion functions

Примечания Remarks

Эти функции имеют семантику, указанную в стандартной библиотеке C. These functions have the semantics specified in the C standard library.

Функции алгоритма Algorithm functions

Примечания Remarks

Эти функции имеют семантику, указанную в стандартной библиотеке C. These functions have the semantics specified in the C standard library.

Функции создания случайных чисел с низким качеством Low-quality random number generation functions

Примечания Remarks

Эти функции имеют семантику, указанную в стандартной библиотеке C. These functions have the semantics specified in the C standard library.

Абсолютные значения Absolute values

Примечания Remarks

Эти функции имеют семантику, указанную в стандартной библиотеке C. These functions have the semantics specified in the C standard library.

Деление целых чисел Integer division

Примечания Remarks

Эти функции имеют семантику, указанную в стандартной библиотеке C. These functions have the semantics specified in the C standard library.

Stdlib.h — is the header of the general purpose standard library of C programming language which includes functions involving memory allocation, process control, conversions and others. It is compatible with C++ and is known as cstdlib in C++. The name… … Wikipedia

Stdlib.h — Saltar a navegación, búsqueda stdlib.h (std lib: standar library o biblioteca estándar) es el archivo de cabecera de la biblioteca estándar de propósito general del lenguaje de programación C. Contiene los prototipos de funciones de C para… … Wikipedia Español

stdlib.h — (std lib: standard library o biblioteca estándar) es el archivo de cabecera de la biblioteca estándar de propósito general del lenguaje de programación C. Contiene los prototipos de funciones de C para gestión de memoria dinámica, control de… … Wikipedia Español

stdlib.h — Стандартная библиотека языка программирования С assert.h complex.h ctype.h errno.h fenv.h float.h inttypes.h iso646.h limits.h locale.h math.h setjmp.h signal.h stdarg.h stdbool.h stddef.h stdint.h … Википедия

System (stdlib) — Saltar a navegación, búsqueda La función system() está incluída en la biblioteca cuya cabecera es . System permite ejecutar a su vez otras funciones como: cls , dir o pause . Por ejemplo, al escribir system ( pause ) se está… … Wikipedia Español

system (stdlib) — system() es una función del lenguaje de programación C incluida en su biblioteca estándar, dentro de la cabecera . Sirve para ejecutar subprocesos o comandos del sistema operativo. «system» permite ejecutar a su vez otras… … Wikipedia Español

Dao (programming language) — Infobox programming language name = Dao paradigm = Multi paradigm year = 2006 designer = Limin Fu latest release version = dao 1.0 preview latest release date = 2008 04 25 typing = statically typed or dynamically typed influenced by = C++, Lua,… … Wikipedia

Strtod — is a C language function that converts an ASCII string to a double precision value. It is utilized via the following sequence:double strtod(const char *restrict, char **restrict); [OpenGroup Technical Standards Documentation] Strtod is included… … Wikipedia

strtod — (сокр. от string to double, «строку в число двойной точности») функция языка Си, конвертирующая символ строки в число с плавающей запятой двойной точности. Определение функции имеет вид: double strtod ( const char * str, char ** endptr… … Википедия

Memory leak — A memory leak, in computer science (or leakage, in this context), occurs when a computer program consumes memory but is unable to release it back to the operating system. In object oriented programming, a memory leak happens when an object is… … Wikipedia

Читайте также:  Ir out xbox one что это

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *