.TH LIBSIMPLE_STRNTOUPPER 3 libsimple
.SH NAME
libsimple_strntoupper, libsimple_stpntoupper \- convert a string to upper case
.SH SYNOPSIS
.nf
#include <libsimple.h>
inline char *libsimple_strntoupper(char *\fIdest\fP, const char *\fIsrc\fP, size_t \fIn\fP);
char *libsimple_stpntoupper(char *\fIdest\fP, const char *\fIsrc\fP, size_t \fIn\fP);
#ifndef strntoupper
# define strntoupper libsimple_strntoupper
#endif
#ifndef stpntoupper
# define stpntoupper libsimple_stpntoupper
#endif
.fi
.PP
Link with
.IR \-lsimple .
.SH DESCRIPTION
The
.BR libsimple_strntoupper ()
and
.BR libsimple_stpntoupper ()
functions copies and covert a string, including the
NUL byte that terminates it, to upper case.
The string
.I src
is copied into
.IR dest ,
with all lower case ASCII characters converted to
upper case; however no more than
.I n
bytes will be copied or coverted. The arrays may overlap,
and there is an optimisation for the case where
.IR dest==src .
.SH RETURN VALUE
The
.BR libsimple_strntoupper ()
function returns the pointer
.IR dest .
.PP
The
.BR libsimple_stpntoupper ()
function returns the pointer
end of the string copied into
.IR dest ,
that is
.IR &dest[strnlen(src,n)] .
.SH ERRORS
The
.BR libsimple_strntoupper ()
and
.BR libsimple_stpntoupper ()
functions cannot fail.
.SH ATTRIBUTES
For an explanation of the terms used in this section, see
.BR attributes (7).
.TS
allbox;
lb lb lb
l l l.
Interface Attribute Value
T{
.BR libsimple_strntoupper (),
.br
.BR libsimple_stpntoupper ()
T} Thread safety MT-Safe
T{
.BR libsimple_strntoupper (),
.br
.BR libsimple_stpntoupper ()
T} Async-signal safety AS-Safe
T{
.BR libsimple_strntoupper (),
.br
.BR libsimple_stpntoupper ()
T} Async-cancel safety AC-Safe
.TE
.SH EXAMPLES
None.
.SH APPLICATION USAGE
None.
.SH RATIONALE
None.
.SH FUTURE DIRECTIONS
None.
.SH NOTES
None.
.SH HISTORY
libsimple 1.1
.SH BUGS
None.
.SH SEE ALSO
.BR libsimple_strntolower (3),
.BR libsimple_strnreplace (3),
.BR libsimple_strnntoupper (3),
.BR libsimple_memntoupper (3)