MEMCMP(3P)

πŸ’– MEMCMP(3P) β€” the POSIX Programmer's Manual era πŸ’–

okay bestie, sit down, hydrate, because we're talking about memcmp from the POSIX Programmer's Manual and it's genuinely so much simpler than it sounds. 🫢

🌸 PROLOG 🌸

Heads up, queen: this manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface may differ (so like, go check the corresponding Linux manual page for the tea on Linux behavior), or β€” plot twist β€” the interface may not be implemented on Linux at all. πŸ’€


✨ NAME ✨

memcmp β€” compare bytes in memory. that's it. that's the whole job. πŸ‘‘

πŸŽ€ SYNOPSIS πŸŽ€

#include <string.h>

int memcmp(const void *s1, const void *s2, size_t n);

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so first things first, the functionality described on this reference page is aligned with the ISO C standard. If there's any conflict between the requirements described here and the ISO C standard, that conflict is unintentional β€” like, nobody meant that. This volume of POSIX.1‐2017 defers to the ISO C standard, periodt. πŸ’…

Now the actual function, bestie:

The memcmp() function shall compare the first n bytes (each interpreted as unsigned char, key detail, don't forget it) of the object pointed to by s1 to the first n bytes of the object pointed to by s2. 🧚

And the sign of a non-zero return value? It shall be determined by the sign of the difference between the values of the first pair of bytes (both interpreted as type unsigned char) that differ in the objects being compared. iykyk β€” it stops caring the second it finds a difference. πŸ”₯

⭐ RETURN VALUE ⭐

The memcmp() function shall return an integer that is greater than, equal to, or less than 0, if the object pointed to by s1 is greater than, equal to, or less than the object pointed to by s2, respectively. matching energy, one-to-one, no notes. 🌈

πŸ’œ ERRORS πŸ’œ

No errors are defined. literally none. she simply does not fail. 😌

The following sections are informative β€” aka the vibes-only section, no rules here:

πŸ“ EXAMPLES πŸ“

None. (we're all just out here trusting you know how to call a function, bestie πŸ₯°)

🌸 APPLICATION USAGE 🌸

None. (see above. nothing to add. iconic behavior honestly.)

πŸ¦‹ RATIONALE πŸ¦‹

None.

πŸŽ€ FUTURE DIRECTIONS πŸŽ€

None.

✨ SEE ALSO ✨

  • The Base Definitions volume of POSIX.1‐2017, <string.h> β€” go read the header, she's the source of truth πŸ’–

okay legal bestie moment, stay with me:

Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1-2017, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 7, 2018 Edition, Copyright (C) 2018 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between this version and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html .

Any typographical or formatting errors that appear in this page are most likely to have been introduced during the conversion of the source files to man page format. To report such errors, see https://www.kernel.org/doc/man-pages/reporting_bugs.html .


and that's the whole page, bestie!! brought to you by IEEE/The Open Group, dated 2017, filed under MEMCMP(3P) β€” mwah, take care of her, she's a classic πŸ’…βœ¨πŸ«Ά

πŸ“¦ where this page comes from