xref: /freebsd-14.2/lib/libc/string/strcmp.3 (revision b2c76c41)
158f0484fSRodney W. Grimes.\" Copyright (c) 1990, 1991, 1993
258f0484fSRodney W. Grimes.\"	The Regents of the University of California.  All rights reserved.
358f0484fSRodney W. Grimes.\"
458f0484fSRodney W. Grimes.\" This code is derived from software contributed to Berkeley by
558f0484fSRodney W. Grimes.\" Chris Torek and the American National Standards Committee X3,
658f0484fSRodney W. Grimes.\" on Information Processing Systems.
758f0484fSRodney W. Grimes.\"
858f0484fSRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without
958f0484fSRodney W. Grimes.\" modification, are permitted provided that the following conditions
1058f0484fSRodney W. Grimes.\" are met:
1158f0484fSRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright
1258f0484fSRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer.
1358f0484fSRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright
1458f0484fSRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer in the
1558f0484fSRodney W. Grimes.\"    documentation and/or other materials provided with the distribution.
163fb3b97cSEd Maste.\" 3. Neither the name of the University nor the names of its contributors
1758f0484fSRodney W. Grimes.\"    may be used to endorse or promote products derived from this software
1858f0484fSRodney W. Grimes.\"    without specific prior written permission.
1958f0484fSRodney W. Grimes.\"
2058f0484fSRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
2158f0484fSRodney W. Grimes.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
2258f0484fSRodney W. Grimes.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
2358f0484fSRodney W. Grimes.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
2458f0484fSRodney W. Grimes.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
2558f0484fSRodney W. Grimes.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2658f0484fSRodney W. Grimes.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2758f0484fSRodney W. Grimes.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2858f0484fSRodney W. Grimes.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2958f0484fSRodney W. Grimes.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
3058f0484fSRodney W. Grimes.\" SUCH DAMAGE.
3158f0484fSRodney W. Grimes.\"
3258f0484fSRodney W. Grimes.\"     @(#)strcmp.3	8.1 (Berkeley) 6/4/93
3358f0484fSRodney W. Grimes.\"
34*4b7f35dbSGordon Bergling.Dd April 3, 2022
3558f0484fSRodney W. Grimes.Dt STRCMP 3
3658f0484fSRodney W. Grimes.Os
3758f0484fSRodney W. Grimes.Sh NAME
3838ce39bdSDaniel O'Callaghan.Nm strcmp ,
3949cb7351SMike Pritchard.Nm strncmp
4058f0484fSRodney W. Grimes.Nd compare strings
4125bb73e0SAlexey Zelkin.Sh LIBRARY
4225bb73e0SAlexey Zelkin.Lb libc
4358f0484fSRodney W. Grimes.Sh SYNOPSIS
4432eef9aeSRuslan Ermilov.In string.h
4558f0484fSRodney W. Grimes.Ft int
4658f0484fSRodney W. Grimes.Fn strcmp "const char *s1" "const char *s2"
4758f0484fSRodney W. Grimes.Ft int
4858f0484fSRodney W. Grimes.Fn strncmp "const char *s1" "const char *s2" "size_t len"
4958f0484fSRodney W. Grimes.Sh DESCRIPTION
5058f0484fSRodney W. GrimesThe
5158f0484fSRodney W. Grimes.Fn strcmp
5258f0484fSRodney W. Grimesand
5358f0484fSRodney W. Grimes.Fn strncmp
5458f0484fSRodney W. Grimesfunctions
5558f0484fSRodney W. Grimeslexicographically compare the null-terminated strings
5658f0484fSRodney W. Grimes.Fa s1
5758f0484fSRodney W. Grimesand
5858f0484fSRodney W. Grimes.Fa s2 .
59fa91ff27SMike Pritchard.Pp
60fa91ff27SMike PritchardThe
61fa91ff27SMike Pritchard.Fn strncmp
6243e13bf5SMike Barcroftfunction
63fa91ff27SMike Pritchardcompares not more than
64fa91ff27SMike Pritchard.Fa len
65fa91ff27SMike Pritchardcharacters.
6643e13bf5SMike BarcroftBecause
6743e13bf5SMike Barcroft.Fn strncmp
6843e13bf5SMike Barcroftis designed for comparing strings rather than binary data,
6943e13bf5SMike Barcroftcharacters that appear after a
7043e13bf5SMike Barcroft.Ql \e0
7143e13bf5SMike Barcroftcharacter are not compared.
7258f0484fSRodney W. Grimes.Sh RETURN VALUES
7358f0484fSRodney W. GrimesThe
7458f0484fSRodney W. Grimes.Fn strcmp
7558f0484fSRodney W. Grimesand
7658f0484fSRodney W. Grimes.Fn strncmp
772ce5c85eSTom Rhodesfunctions return an integer greater than, equal to, or less than 0, according
7858f0484fSRodney W. Grimesas the string
7958f0484fSRodney W. Grimes.Fa s1
8058f0484fSRodney W. Grimesis greater than, equal to, or less than the string
8158f0484fSRodney W. Grimes.Fa s2 .
8258f0484fSRodney W. GrimesThe comparison is done using unsigned characters, so that
8358f0484fSRodney W. Grimes.Ql \e200
8458f0484fSRodney W. Grimesis greater than
8558f0484fSRodney W. Grimes.Ql \e0 .
8658f0484fSRodney W. Grimes.Sh SEE ALSO
8758f0484fSRodney W. Grimes.Xr bcmp 3 ,
8858f0484fSRodney W. Grimes.Xr memcmp 3 ,
8958f0484fSRodney W. Grimes.Xr strcasecmp 3 ,
9058f0484fSRodney W. Grimes.Xr strcoll 3 ,
915174a6a2SEdward Tomasz Napierala.Xr strxfrm 3 ,
925174a6a2SEdward Tomasz Napierala.Xr wcscmp 3
9358f0484fSRodney W. Grimes.Sh STANDARDS
9458f0484fSRodney W. GrimesThe
9558f0484fSRodney W. Grimes.Fn strcmp
9658f0484fSRodney W. Grimesand
9758f0484fSRodney W. Grimes.Fn strncmp
9858f0484fSRodney W. Grimesfunctions
9958f0484fSRodney W. Grimesconform to
100588a200cSRuslan Ermilov.St -isoC .
101*4b7f35dbSGordon Bergling.Sh HISTORY
102*4b7f35dbSGordon BerglingThe
103*4b7f35dbSGordon Bergling.Fn strcmp
104*4b7f35dbSGordon Berglingfunction first appeared in the Programmer's Workbench (PWB/UNIX)
105*4b7f35dbSGordon Berglingand was ported to
106*4b7f35dbSGordon Bergling.At v7 ;
107*4b7f35dbSGordon Bergling.Fn strncmp
108*4b7f35dbSGordon Berglingfirst appeared in
109*4b7f35dbSGordon Bergling.At v7 .
110