diff options
| author | Ed Maste <emaste@FreeBSD.org> | 2024-06-05 20:03:13 +0000 |
|---|---|---|
| committer | Ed Maste <emaste@FreeBSD.org> | 2024-11-20 17:15:11 +0000 |
| commit | 5cc53d79655bf7f67b1a794c088d896aa6475c2e (patch) | |
| tree | 75d5162a6b1a038042c720ef421dae01f858f610 /lib/libc/string | |
| parent | e27970ae8fffd7d14cd106efc150e60ae307607a (diff) | |
Diffstat (limited to 'lib/libc/string')
| -rw-r--r-- | lib/libc/string/memcmp.3 | 41 |
1 files changed, 25 insertions, 16 deletions
diff --git a/lib/libc/string/memcmp.3 b/lib/libc/string/memcmp.3 index e7666fe6d605..8f4980d61c05 100644 --- a/lib/libc/string/memcmp.3 +++ b/lib/libc/string/memcmp.3 @@ -29,12 +29,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 15, 2016 +.Dd November 20, 2024 .Dt MEMCMP 3 .Os .Sh NAME .Nm memcmp -.Nd compare byte string +.Nd compare bytes in memory .Sh LIBRARY .Lb libc .Sh SYNOPSIS @@ -45,27 +45,25 @@ The .Fn memcmp function -compares byte string +compares byte object .Fa b1 -against byte string +against byte object .Fa b2 . -Both strings are assumed to be +Both objects are assumed to be .Fa len bytes long. .Sh RETURN VALUES The .Fn memcmp -function -returns zero if the two strings are identical, -otherwise returns the difference between the first two differing bytes -(treated as -.Vt "unsigned char" -values, so that -.Sq Li \e200 -is greater than -.Sq Li \&\e0 , -for example). -Zero-length strings are always identical. +function returns zero if the two objects are identical. +Zero-length objects are considered identical. +The +.Fn memcmp +function returns a negative value if the first differing byte has a lower +value in +.Fa b1 +and a positive value if the first differing byte has a higher value in +.Fa b1 . .Sh SEE ALSO .Xr bcmp 3 , .Xr strcasecmp 3 , @@ -80,3 +78,14 @@ The function conforms to .St -isoC . +.Sh CAVEATS +If the objects differ, the C library +.Fn memcmp +implementation returns the difference between the first two differing bytes +.Po treated as +.Vt "unsigned char" +values +.Pc . +This behavior is not specified by +.St -isoC , +is not portable, and may not occur in light of compiler optimizations. |
