|
Эта страница руководства является частью версии 5.0 Инструментов XCodeПолучить эти инструменты:
Если Вы выполняете версию Инструментов XCode кроме 5,0, просматриваете документацию локально:
Читать страницы руководстваСтраницы руководства предназначаются как справочник для людей, уже понимающих технологию.
|
MEMSET_S(3) BSD Library Functions Manual MEMSET_S(3) NAME memset_s -- copy a value to all bytes of a memory buffer LIBRARY Standard C Library (libc, -lc) SYNOPSIS #define __STDC_WANT_LIB_EXT1__ 1 #include <string.h> errno_t memset_s(void *s, rsize_t smax, int c, rsize_t n); DESCRIPTION The memset_s() function copies the value c (converted to an unsigned char) into each of the first n bytes of the memory buffer whose starting address is given by s. It is a runtime-consrtaints violation if s is a null pointer, or if either of smax or n is larger than RSIZE_MAX, or if smax is smaller than n. If there is a runtime-constraints violation, and if s is not a null pointer, and if smax is not larger than RSIZE_MAX, then, before reporting the runtime-con-straints runtime-constraints straints violation, memset_s() copies smax bytes to the destination. In contrast to the memset(3) function, calls to memset_s() will never be ``optimised away'' by a com-piler. compiler. piler. This property is required by the following sentences in section K.3.7.4.1 of ISO/IEC 9899:2011 (``ISO C11''): Unlike memset(), any call to the memset_s() function shall be evaluated strictly according to the rules of the abstract machine as described in (5.1.2.3). That is, any call to the memset_s() function shall assume that the memory indicated by s and n may be accessible in the future and thus must contain the values indicated by c. RETURN VALUES The memset_s() function returns zero for success, or a non-zero error code if there was a runtime-con-straints runtime-constraints straints violation. ERRORS memset_s() returns the following error codes. It does not store the error code in the global errno variable: [EINVAL] The s argument was a null pointer. [E2BIG] One or both of smax or n was larger than RSIZE_MAX. [EOVERFLOW] n was larger than smax. SEE ALSO memset(3). STANDARDS The memset_s() function conforms to ISO/IEC 9899:2011 (``ISO C11''), except that the set_constraint_handler_s() interface is not supported. BSD February 21, 2012 BSD |
Сообщение о проблемах
Способ сообщить о проблеме с этой страницей руководства зависит от типа проблемы:
- Ошибки содержания
- Ошибки отчета в содержании этой документации со ссылками на отзыв ниже.
- Отчеты об ошибках
- Сообщите об ошибках в функциональности описанного инструмента или API через Генератор отчетов Ошибки.
- Форматирование проблем
- Отчет, форматирующий ошибки в интерактивной версии этих страниц со ссылками на отзыв ниже.