The Open Group Base Specifications Issue 8
IEEE Std 1003.1-2024
Copyright © 2001-2024 The IEEE and The Open Group

NAME

memchr — find byte in memory

SYNOPSIS

#include <string.h>

void *memchr(const void *
s, int c, size_t n);

DESCRIPTION

[CX] [Option Start] The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of POSIX.1-2024 defers to the ISO C standard. [Option End]

The memchr() function shall locate the first occurrence of c (converted to an unsigned char) in the initial n bytes (each interpreted as unsigned char) pointed to by s.

The implementation shall behave as if it reads the bytes sequentially and stops as soon as a matching byte is found.

[CX] [Option Start] The memchr() function shall not change the setting of errno on valid input. [Option End]

RETURN VALUE

The memchr() function shall return a pointer to the located byte, or a null pointer if the byte is not found.

ERRORS

No errors are defined.


The following sections are informative.

EXAMPLES

None.

APPLICATION USAGE

None.

RATIONALE

None.

FUTURE DIRECTIONS

None.

SEE ALSO

XBD <string.h>

CHANGE HISTORY

First released in Issue 1. Derived from Issue 1 of the SVID.

Issue 7

POSIX.1-2008, Technical Corrigendum 1, XSH/TC1-2008/0374 [110] is applied.

Issue 8

Austin Group Defect 448 is applied, adding a requirement that memchr() does not change the setting of errno on valid input.

Austin Group Defect 1302 is applied, aligning this function with the ISO/IEC 9899:2018 standard.

End of informative text.

 

return to top of page

UNIX® is a registered Trademark of The Open Group.
POSIX™ is a Trademark of The IEEE.
Copyright © 2001-2024 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]