Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

rune(2) [plan9 man page]

RUNE(2) 							System Calls Manual							   RUNE(2)

NAME
runetochar, chartorune, runelen, fullrune, utflen, utfrune, utfrrune, utfutf - rune/UTF conversion SYNOPSIS
#include <u.h> #include <libc.h> int runetochar(char *s, Rune *r) int chartorune(Rune *r, char *s) int runelen(long r) int fullrune(char *s, int n) int utflen(char *s) char* utfrune(char *s, long c) char* utfrrune(char *s, long c) char* utfutf(char *s1, char *s2) DESCRIPTION
These routines convert to and from a UTF byte stream and runes. Runetochar copies one rune at r to at most UTFmax bytes starting at s and returns the number of bytes copied. UTFmax, defined as 3 in <libc.h>, is the maximum number of bytes required to represent a rune. Chartorune copies at most UTFmax bytes starting at s to one rune at r and returns the number of bytes copied. If the input is not exactly in UTF format, chartorune will convert to 0x80 and return 1. Runelen returns the number of bytes required to convert r into UTF. Fullrune returns 1 if the string s of length n is long enough to be decoded by chartorune and 0 otherwise. This does not guarantee that the string contains a legal UTF encoding. This routine is used by programs that obtain input a byte at a time and need to know when a full rune has arrived. The following routines are analogous to the corresponding string routines with utf substituted for str and rune substituted for chr. Utflen returns the number of runes that are represented by the UTF string s. Utfrune (utfrrune) returns a pointer to the first (last) occurrence of rune c in the UTF string s, or 0 if c does not occur in the string. The NUL byte terminating a string is considered to be part of the string s. Utfutf returns a pointer to the first occurrence of the UTF string s2 as a UTF substring of s1, or 0 if there is none. If s2 is the null string, utfutf returns s1. SOURCE
/sys/src/libc/port/rune.c /sys/src/libc/port/utfrune.c SEE ALSO
utf(6), tcs(1) RUNE(2)

Check Out this Related Man Page

MBRUNE(3)						   BSD Library Functions Manual 						 MBRUNE(3)

NAME
mbrune, mbrrune, mbmb -- multibyte rune support for C LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <rune.h> char * mbrune(const char *string, rune_t rune); char * mbrrune(const char *string, rune_t rune); char * mbmb(const char *string, char *pattern); DESCRIPTION
The 4.4BSD ``rune'' functions have been deprecated in favour of the ISO C99 extended multibyte and wide character facilities and should not be used in new applications. Consider working with wide characters instead, and using wcschr(3), wcsrchr(3), and wcsstr(3) instead of these functions. These routines provide the corresponding functionality of strchr(), strrchr() and strstr() for multibyte strings. The mbrune() function locates the first occurrence of rune() in the string pointed to by string. The terminating NUL character is considered part of the string. If rune is '', mbrune() locates the terminating ''. The mbrrune() function locates the last occurrence of rune in the string string. If rune is '', mbrune() locates the terminating ''. The mbmb() function locates the first occurrence of the null-terminated string pattern in the null-terminated string string. If pattern is the empty string, mbmb() returns string; if pattern occurs nowhere in string, mbmb() returns NULL; otherwise mbmb() returns a pointer to the first character of the first occurrence of pattern. RETURN VALUES
The function mbrune() returns a pointer to the located character, or NULL if the character does not appear in the string. The mbrrune() function returns a pointer to the character, or NULL if the character does not appear in the string. The mbmb() function returns a pointer to the pattern, or NULL if the pattern does not appear in the string. SEE ALSO
rune(3), setlocale(3), euc(4), utf2(4), utf8(5) HISTORY
The mbrune(), mbrrune(), and mbmb() functions first appeared in Plan 9 from Bell Labs as utfrune(), utfrrune(), and utfutf(). BSD
April 19, 1994 BSD
Man Page