Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
scan_utf8(3)		   Library Functions Manual		  scan_utf8(3)

NAME
       scan_utf8 - decode an unsigned integer from UTF-8 encoding

SYNTAX
       #include	<scan.h>

       size_t scan_utf8(const char *src,size_t len,uint32_t *dest);

DESCRIPTION
       scan_utf8  decodes  an unsigned integer in UTF-8	encoding from a	memory
       area holding binary data.  It writes the	decode value in	dest  and  re-
       turns the number	of bytes it read from src.

       scan_utf8 never reads more than len bytes from src.  If the sequence is
       longer than that, or the	memory	area  contains	an  invalid  sequence,
       scan_utf8 returns 0 and does not	touch dest.

       The length of the longest UTF-8 sequence	is 5.  If the buffer is	longer
       than that, and scan_utf8	fails, then the	data was not a valid UTF-8 en-
       coded sequence.

NOTE
       fmt_utf8	and scan_utf8 implement	the encoding from UTF-8, but are meant
       to be able to store integers, not just  Unicode	code  points.	Values
       above  0x10ffff are not valid UTF-8.  If	you are	using this function to
       parse UTF-8, you	need to	reject them (see RFC 3629).

SEE ALSO
       fmt_utf8(3)

								  scan_utf8(3)

NAME | SYNTAX | DESCRIPTION | NOTE | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=libowfat_scan_utf8&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help